Venciity

[ Telerik C#] MultidimArrays-Demos 7. BinarySearch

Feb 26th, 2014
179
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 1.51 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4.  
  5. class BinarySearch
  6. {
  7.     static Random rand = new Random();
  8.  
  9.     static void Main()
  10.     {
  11.         string[] beers =
  12.         {
  13.             "Zagorka", "Ariana", "Shumensko", "Astika",
  14.             "Kamenitza", "Bolyarka", "Amstel"
  15.         };
  16.         Array.Sort(beers);
  17.  
  18.         string target = "Astika";
  19.         int index = Array.BinarySearch(beers, target);
  20.         Console.WriteLine("{0} is found at index {1}.", target, index);
  21.         // Result: Astika is found at index 2.
  22.  
  23.         target = "Heineken";
  24.         index = Array.BinarySearch(beers, target);
  25.         Console.WriteLine("{0} is not found (index={1}).", target, index);
  26.         // Result: Heineken is not found (index=-5).
  27.  
  28.         //load test
  29.  
  30.         string line = Console.ReadLine();
  31.         int n = int.Parse(line);
  32.         byte[] array = new byte[n];
  33.  
  34.         for (int i = 0; i < n; i++)
  35.         {
  36.             array[i] = (byte)(i % byte.MaxValue);
  37.         }
  38.  
  39.         Array.Sort(array);
  40.  
  41.         DateTime start = DateTime.Now;
  42.         foreach (var element in array)
  43.         {
  44.             Array.IndexOf(array, element);
  45.         }
  46.         DateTime end = DateTime.Now;
  47.  
  48.         Console.WriteLine("IndexOf: {0}", end - start);
  49.  
  50.         start = DateTime.Now;
  51.         foreach (var element in array)
  52.         {
  53.             Array.BinarySearch(array, element);
  54.         }
  55.         end = DateTime.Now;
  56.  
  57.         Console.WriteLine("BinarySearch: {0}", end - start);
  58.     }
  59. }
Advertisement
Add Comment
Please, Sign In to add comment