[TIL] 120 [C#] 리스트 정렬된 요소 인덱스 반환 BinarySearch

업데이트:

카테고리:

태그: ,


BinarySearch



BinarySearch(T)

기본 비교자를 사용하여 정렬된 전체 List에서 요소를 검색하고 요소의 인덱스(0부터 시작)를 반환합니다.

    List<int> list = new List<int>() { 1, 3, 5, 9, 10, 15, 23 };

    Console.WriteLine($" Index  1 : {list.BinarySearch(1)}");   //0
    Console.WriteLine($" Index  5 : {list.BinarySearch(5)}");   //2

    Console.WriteLine($" Index  8 : {list.BinarySearch(8)}");   //-4
    Console.WriteLine($"~Index  8 : {~list.BinarySearch(8)}");  //3

    Console.WriteLine($" Index 15 : {list.BinarySearch(15)}");  //5
    Console.WriteLine($" Index 16 : {list.BinarySearch(16)}");  //-7
    Console.WriteLine($"~Index 16 : {~list.BinarySearch(16)}"); //6
    
    Console.WriteLine($" Index 17 : {list.BinarySearch(17)}");  //-7
    
    Console.ReadLine();
    • image
  • 각 요소의 인덱스를 반환해준다.
  • 값이 없을경우 음수가 나오는데 그 값의 보수 (~index)를 해주면 들어가야 할 위치를 반환합니다.





잡담, 일기?

?




📔

댓글남기기