1、接收用户输入的10个数,完成如下操作:
(1)接收用户输入的1个数,运用二分查找法查找该数是否在数据序列中;
(2)要求编写二分查找的递归算法和非递归算法,并分别进行测试。
2、源码
#include<stdio.h>++
int seeqSearch(int a[],int n,int k){
int i=n-1;
for(;i>=0;i--){//遍历数组
if(a[i]==k){//找到对应的数组
return i;//返回该数组的下标
}
}
return -1;//失败返回值为-1
}
//**************非递归算法**********************
int binSearch(int a[],int n,int k){
int mid,hig,low;//定义指向中间高位和low的元素
hig=n-1;//为高位指针赋初值
low=0;//地位赋初值
while(low<=hig){//到low大于hig时代表未找到退出循环
mid=(hig+low)/2;//为mid赋值
if(a[mid]==k){