问题
在一个排好序的数组T[1…n]中查找x,如果x在T中,输出x在T的下标j;如果x不在T中,输出j=0
解析
遍历法查找元素x的下标
用for循环将i从1~n依次遍历,当a[i]==x时,记录下标j=i,若当i>n时,j仍然未被赋值,则输出0
设计
for (i = 1; i <= n; i++) {
if (x == a[i]) {
j = i; //当a[i]==x时,记录下标j=i
break;
}
}
分析
查找元素x的下标时复杂度为O(j),而0<=j<=n,所以复杂度为:
源码
github源码地址
https://github.com/loadin61/cuddly-memory