已知有序数组a前10000个元素是随机整数,现需查找某个整数是否在该数组中。以下方法中,( ) 查找效率最高。
- A.二分查找法
- B.顺序查找法
- C.逆序查找法
- D.哈希查找法
正确答案及解析
正确答案
D
解析
本题考查常见查找算法时间复杂度。顺序表查找:最好 O(1) 最坏 O(n) 最终 O(n)折半查找:最终logn二叉排序树:最终logn平衡二叉树:logn哈希表法(散列表):O(1),但是构建哈希表需要O(n)分块查找:O(logn)
已知有序数组a前10000个元素是随机整数,现需查找某个整数是否在该数组中。以下方法中,( ) 查找效率最高。
本题考查常见查找算法时间复杂度。顺序表查找:最好 O(1) 最坏 O(n) 最终 O(n)折半查找:最终logn二叉排序树:最终logn平衡二叉树:logn哈希表法(散列表):O(1),但是构建哈希表需要O(n)分块查找:O(logn)