题目:请给出一个运行时间为 n*lgn 的算法, 使之能在给定一个由n个整数构成的集合S和另外一个整数 x 时,判断 出 S中是否存在有两个其和 等于 x 的元素!
答案:先将 S 内的元素进行排序 使用2分法排序 时间复杂度是 n*lgn 然后 将 x - S 得到 S1 时间复杂度为 n , S,与S1 进行比较 所需的时间复杂度 n 所以整合起来的时间复杂度为 n*lgn
题目:请给出一个运行时间为 n*lgn 的算法, 使之能在给定一个由n个整数构成的集合S和另外一个整数 x 时,判断 出 S中是否存在有两个其和 等于 x 的元素!
答案:先将 S 内的元素进行排序 使用2分法排序 时间复杂度是 n*lgn 然后 将 x - S 得到 S1 时间复杂度为 n , S,与S1 进行比较 所需的时间复杂度 n 所以整合起来的时间复杂度为 n*lgn