单项选择题
给定n个整数构成的数组A={a
1
,a
2
,…,a
n
}和整数x,判断A中是否存在两个元素a
i
和a
j
,使的a
i
+a
j
=x。为了求解问题,首先用归并排序算法对数组A进行从大到小排序;然后判断是否存在a
i
+a
j
=x,具体的方法如下列伪代码所示。则求解该问题时排序算法应用了______算法设计策略,整个算法的时间复杂度为______。
…
i=1;j=n
While i<j
If a
i
+a
j
=x return true
Else if a
i
+a
j
>x
J--;
Else
I++;
Return false;
A.O(n)
B.O(nlgn)
C.O(n2)
D.O(nlog2n)