早教吧 育儿知识 作业答案 考试题库 百科 知识分享

数组的习题已知不重复且已经按从小到大排好的m个数组A[1,m](为简单起见还设m=2^k,k是一个确定的非负整数)对于给定的整数c,要求寻找一个下标i,使得A[i]=c,若找不到,则返回一个0.(两种算

题目详情
数组的习题
已知不重复且已经按从小到大排好的m个数组A[1,m] (为简单起见 还设m=2^k,k是一个确定的非负整数) 对于给定的整数c ,要求寻找一个下标 i ,使得A[i]=c,若找不到,则返回一个0.(两种算法)
有点尴尬,发现只有4个财富了,虽然没分,但我在此衷心感谢解答的大侠们,祝福你们
▼优质解答
答案和解析
算法1:对分查找
每次总是将要查找的数据与待查找区间的中间位置元素进行比较,若相等,则已经找到;若大于中间元素,则下一步在右半段继续查找;若小于中间元素,则下一步在左半段继续查找.
算法2:顺序查找
这比较简单:
下操作步骤:
step1. 对于i=1,2,3,...,m执行如下操作
如果c=a[n], 则跳出循环,即:转step2
step2.如果i