持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第7天,点击查看活动详情。
最多:每个节点子树有三个,关键字2个。 最少:每个节点子树有两个,关键字1个。
求最大,向上取余。根节点最少可以是两个子树,一个关键字。
B+树
B+树有两个头指针:一个指向根节点,另一个指向关键字最小的叶节点。因此,可以对B+树进行两种查找运算。 一种是从最小关键字开始的顺序查找,另一种是从根节点开始的多路查找。
串
KMP算法
Nextval第一位若相等,则为0.
例1:
例2:
BF算法括号后面的(i,j):i代表主串中匹配失败的序号数,j代表子串里匹配失败的序号数。
KMP算法,当第一次匹配到j等于6时失败,查找子串序号为6的nextval作为子串序号来跟主串重新进行匹配,依次类推,直到找到为止。
排序
插入排序
一个一个前移,每个都依次向前面的比较。
希尔排序
增量之间的插入排序(常用增量:1/3/5)
冒泡排序
相邻两个数一一比较。
快速排序
前后i、j作比较。当没有对某个数进行移动时,继续移动此数的下标。 当从小到大(从大到小)每次排序结束后,其左子序列都比该数小(大),右子序列都比该数大(小)。
选择排序
首先在序列中找到最小元素,依次放到序列的前端。(升序降序趟数不一样)
堆排序
①建堆
②m/2
③建大根堆
④与最后一个换
归并排序
分组再结合
基数排序
个十百。。。