用折半查找法找出整型数组中指定元素所在的位置,并输出(折半查找法只能用于有序数列)。
Posted yanglike111
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用折半查找法找出整型数组中指定元素所在的位置,并输出(折半查找法只能用于有序数列)。相关的知识,希望对你有一定的参考价值。
//用折半查找法找出整型数组中指定元素所在的位置,并输出(折半查找法只能用于有序数列)。 #include<stdio.h> main() { int a[10]={1,3,6,8,9,12,15,16,19,20},n,low,high,mid; scanf("%d",&n);//输入要找的数 low=0; //llow是首元素的下标 high=9;//high是尾元素的下标 mid=(low+high)/2;//mid是中间元素的下标 while(low<=high) { if(a[mid]==n) //找到了,跳出循环 break; else if(n<a[mid]) //中间元素大于待查数 high=mid-1; else low=mid+1;//中间元素小于待查数 mid=(low+high)/2;//确定下一次循环的中间元素的位置 } if(low<=high) //说明找到待查数后,从break跳出 printf("%d在a[%d]中",n,mid); else printf("查无此数"); }
以上是关于用折半查找法找出整型数组中指定元素所在的位置,并输出(折半查找法只能用于有序数列)。的主要内容,如果未能解决你的问题,请参考以下文章
有15个数按从大到小的顺序存放在一个数组中, 用折半查找法找出该数是数组的第几个元素的值, 如果该数不在数组中,则输出“无此数”
java数组算法例题(冒泡排序,选择排序,找最大值最小值,添加删除元素等)