element
과 일치하는 elem
을 찾아야합니다.
내 프로그램이 작동하지만 효율적이지 않습니다. 나는 매우 큰 ArrayList<Obj> pairs
(4000 개가 넘는 요소들)을 가지고 있고 나는 이진 검색을 사용하여 일치하는 색인을 찾는다. 새로운 ArrayList를 목록으로 ArrayList를 쌍의 절반을 복사하는 루프를 사용하는 것보다 더 효율적인 방법이 있는지쌍 목록을 통한 이진 검색
public int search(String element) {
ArrayList<String> list = new ArrayList<String>();
for (int i = 0; i < pairs.size(); i++) {
list.add(pairs.get(i).getElem());
}
return index = Collections.binarySearch(list, element);
}
이 궁금하다. 확대 개체에 대한 생성자 : Obj x = new Obj(String elem, String word);
예 -보다 효율적인 방법이 쌍은 검색() –
를 사용하여 전화를 매번 목록의 복사본을 만들 자신을 나열하지 바이너리 검색을 작성하는 것입니다 * 다른 * ['binarySearch()'] (https://docs.oracle.com/javase/8/docs/api/java/util/Collections.html#binarySearch-java.util.List-T-java.util. Comparator-) 방법을 사용하고 목록 요소를 직접 비교하기 위해 [Comparator'] (https://docs.oracle.com/javase/8/docs/api/java/util/Comparator.html)를 제공하십시오. – Andreas