给定包含n 个正整数的数组 A 和正整数 x,要判断数组 A 中是否存在两个元素

admin2022-08-02  48

问题 给定包含n 个正整数的数组 A 和正整数 x,要判断数组 A 中是否存在两个元素之和等于 x,先用插入排序算法对数组 A 进行排序,再用以下过程 P 来判断是否存在两个元素之和等于 x。low=1;high=n;while(high>low)    if A[low]+A[high]=x return true;    else if A[low]+A[high]>x low++;    else high--;return false;则过程 P 的时间复杂度为( ),整个算法的时间复杂度为(请作答此空)。A.O(n)B.O(nlgn)C.O(n2)D.O(n2lgn)

选项 A.O(n)
B.O(nlgn)
C.O(n2)
D.O(n2lgn)

答案 C

解析 本题考查时间复杂度的基本知识。第一空有一层循环while,遍历判断,所以时间复杂度为n;第二空如图所示:插入排序的时间复杂为O(n2) ;
转载请注明原文地址:https://tihaiku.com/congyezige/2416819.html

最新回复(0)