1.线性表查找:
①.顺序查找:从头到尾依次比较,直到出现相等或全部比较完,较慢
②.二分查找:要求是顺序表,且有序---取中间位置的关键字进行比较
③.分块查找:将序列分为几个子序列,任一子序列中的最大值要比下一块子序列的最小值要小,将各子序列放入索引中,
索引包括对应块的最大值以及对应的下标
2.树表查找:
对应的存储结构为二叉树
二叉排序树:左子树的值都比根节点的值要小
右子树的值都比根节点的值要大
左子树,右子树都为二叉排序树
不能有值相等的2个节点
3.hash表查找:关键值直接对应地址
hash函数:根据关键值计算对应的地址
要求:计算快且计算得到的地址尽量均匀
hash冲突:不同的关键值通过hash函数计算出相同的地址值
解决方法:①.开放地址法
②.链表法