자바 배열 에서 요소 에 따라 위치 색인 찾기

1386 단어 배열
Arrays 는 편리 한 검색 방법 을 제공 합 니 다: Arrays. binary Search ();
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        String[] arrays = new String[]{"a","b","c","d","e","fff","g","h","i","j",};
        int positon = Arrays.binarySearch(arrays, "fff");  
         System.out.println("position is:"+positon);
    }

테스트 결과:
    position is:5  

이 방법 도 이분법 으로 이 루어 진 것 이다.
    public static int binarySearch(char[] array, int startIndex, int endIndex, char value) {  
            checkBinarySearchBounds(startIndex, endIndex, array.length);
      
            int lo = startIndex;  
            int hi = endIndex - 1;  
      
            while (lo <= hi) {  
                int mid = (lo + hi) >>> 1;//       
                char midVal = array[mid];  
      
                if (midVal < value) {  
                    lo = mid + 1;  
                } else if (midVal > value) {  
                    hi = mid - 1;  
                } else {  
                    return mid;  // value found  
                }  
            }  
            return ~lo;  // value not present  
        }

전송:http://blog.csdn.net/mattdong0106/article/details/22676807

좋은 웹페이지 즐겨찾기