思考:在含有n个元素的一维数组中顺序查找一个。值k的数组元素的算法: ”考虑此算法的时间复杂度。

思考:在含有n个元素的一维数组中顺序查找一个。值k的数组元素的算法:

int search(int a int n, int k){int E
for(i=0; isn; i )if(a[i]= =k)break;return i;

”考虑此算法的时间复杂度。

这个搜索算法的代码写错了。圆括号的参数表中,第一个参数应该是一个指针参数int *a。还有, 循环部分应该是for(i=0;i<n;i++),整体应该是:
int search(int *a int n, int k)
{
for(i=0; i<n; i++ )
if(a[i]==k) return i;
return -1;
}
整个查找算法的时间复杂度是O(n)。
温馨提示:答案为网友推荐,仅供参考
相似回答