111,129
社区成员
发帖
与我相关
我的任务
分享 private void button1_Click(object sender, EventArgs e)
{
int data = inputdata;
int[] array = new int[1000];
for (var i = 0; i <= 1500; i++)
array[i % 1000] = i * 2;
Array.Sort(array);
int location = binarysearch(inputdata, array);
if (location >= 0)
{
MessageBox.Show("查找结果:" + location.ToString() + "指针位置:" + /*此处为mid的值*/, "查找结果");//在此处调用“mid”
}
else
{
data = inputdata--;
MessageBox.Show("无此数据!如需查找接近值请继续“查找”", "查找结果");
}
}
private int binarysearch(int data, int[] array)
{
int low = 0;
int high = array.Length;
int mid = 0;
while (low <= high)
{
mid = (low + high) / 2;//此处的值转化成全局变量
if (array[mid] == data)
return data;
else
{
if (array[mid] > data)
{ high = mid - 1; }
else if (array[mid] < data)
{ low = mid + 1; }
}
}
return -1;
}private int data = 0;
private void button1_Click(object sender, EventArgs e)
{
if(data == 0) data = inputdata;
int[] array = new int[1000];
for (var i = 0; i <= 1500; i++)
array[i % 1000] = i * 2;
Array.Sort(array);
int location = binarysearch(inputdata, array);
if (location >= 0)
{
MessageBox.Show("查找结果:" + location.ToString() + "指针位置:" + /*此处为mid的值*/, "查找结果");//在此处调用“mid”
}
else
{
data = inputdata--;
MessageBox.Show("无此数据!如需查找接近值请继续“查找”", "查找结果");
}
}
private int mid = 0;
private void button1_Click(object sender, EventArgs e)
{
int data = inputdata;
int[] array = new int[1000];
for (var i = 0; i <= 1500; i++)
array[i % 1000] = i * 2;
Array.Sort(array);
int location = binarysearch(inputdata, array);
if (location >= 0)
{
MessageBox.Show("查找结果:" + location.ToString() + "指针位置:" + mid, "查找结果");//在此处调用“mid”
}
else
{
data = inputdata--;
MessageBox.Show("无此数据!如需查找接近值请继续“查找”", "查找结果");
}
}
private int binarysearch(int data, int[] array)
{
int low = 0;
int high = array.Length;
while (low <= high)
{
mid = (low + high) / 2;//此处的值转化成全局变量
if (array[mid] == data)
return data;
else
{
if (array[mid] > data)
{ high = mid - 1; }
else if (array[mid] < data)
{ low = mid + 1; }
}
}
return -1;
}