자바에서 이진 검색을 사용하여 학습하고 있습니다. 정수리스트에서는 예상 인덱스를 리턴하지만 char 또는 String리스트 (코드 예)에서는 음의 인덱스를 리턴합니다. 이는 예상치 못한 인덱스입니다 (index = -4). List
은 이진 검색이 작동하기 위해 정렬해야합니다Java에서 문자열 바이너리 검색
List<String> str = new ArrayList<>();
str.add("Hey");
str.add("Hi");
str.add("Bye");
int index = Collections.binarySearch(str,"Hi");
System.out.println(index);
또는 더 동적 인 접근 방식 (즉, 수동으로 정렬 할 필요는 없지만 Java에서는 그렇게 할 수 있습니다),'Collections # sort'. – nbokmans