我的任务是创建两个单独的程序,一个我已经完成的线性搜索程序和一个二分搜索程序。这些程序还必须计算在搜索过程中进行的比较次数。我的线性搜索程序已经计算了比较次数,而我的二进制搜索程序却不能。二进制搜索的代码如下所示:
using System;
using System.Collections.Generic;
public class Example
{
public static void Main()
{
Console.WriteLine("Input number you would like to search for");
String Look_for = Console.ReadLine();
int Lookfor;
int.TryParse(Look_for, out Lookfor);
{
List<int> numbers = new List<int>();
numbers.Add(1);
numbers.Add(2);
numbers.Add(3);
numbers.Add(4);
numbers.Add(5);
numbers.Add(6);
numbers.Add(7);
numbers.Add(8);
Console.WriteLine();
foreach (int number in numbers)
{
Console.WriteLine(number);
}
int answer = numbers.BinarySearch(Lookfor);
Console.WriteLine("The numbers was found at:");
Console.WriteLine(answer);
}
}
}
如果有人能告诉我如何修改它以计算比较,将不胜感激。
非常感谢,马修。