Advertisement
Guest User

Untitled

a guest
Nov 20th, 2017
51
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 1.04 KB | None | 0 0
  1.  public static void Przedzial(int[] T, int x) //T musi być posortowane rosnąco
  2.         {
  3.             int i = BinarySearch(T, x);
  4.             if (i != -1)
  5.             {
  6.                 string zbior = "(T[" + (i - 1) + "], T[" + (i + 1) + "]>";
  7.                 Console.WriteLine(zbior);
  8.                 return;
  9.             }
  10.             Console.WriteLine("Dany element nie występuje w ciagu");
  11.         }
  12.         public static int BinarySearch(int[] T, int x) //T posortowane rosnąco
  13.         {
  14.             return Search(T, x, 0, T.Length - 1);
  15.         }
  16.         private static int Search(int[] T, int x, int l, int p)
  17.         {
  18.             if (l <= p)
  19.             {
  20.                 int mid = (p + l) / 2;
  21.                 if (T[mid] == x)
  22.                     return mid;
  23.                 if (T[mid] < x)
  24.                     return Search(T, x, l, mid - 1);   //szukam w lewej połówce
  25.                 else
  26.                     return Search(T, x, mid + 1, p);    //Szukam w prawej połówce
  27.             }
  28.             else return -1;
  29.         }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement