미분류

[알고리즘] 서울에서 김서방 찾기

import java.util.*;
import java.util.stream.*;

class Solution {
    //8배 빠르다.
    public String solution(String[] seoul) {
        for(int i=0; i< seoul.length ; i++) {
            if(seoul[i].equals("Kim")){
                return String.format("김서방은 %d에 있다", i);
            }
        }
        return "김서방이 없다.";
    }
}
import java.util.*;
import java.util.stream.*;

class Solution {
    public String solution(String[] seoul) {
        OptionalInt optionalIndex = IntStream.range(0,seoul.length).filter(i->seoul[i].equals("Kim")).findFirst(); //IntStream은 List<OptionalInt>를 반환한다. getAsInt();
        return String.format("김서방은 %d에 있다", optionalIndex.getAsInt()); //stream은 특정조건에서 break를 하지 못하므로 비효율적이다.
    }
}
https://github.com/imkim1893/algorithms/blob/master/%EC%84%9C%EC%9A%B8%EC%97%90%EC%84%9C%EA%B9%80%EC%84%9C%EB%B0%A9%EC%B0%BE%EA%B8%B0.java

Leave a Reply

Your email address will not be published. Required fields are marked *