1.数组存储地址的计算

len:每个数组元素所占用的字节大小。
n:代表二维数组的列数。
M:代表二维数组的行数。
存储单元从0开始。
2.单链表的删除操作

a1的next指针指向a3就等于p的next指向q的next,
3.单链表的插入操作

S的next指向p的next,p的next指向s。
4.单链表有头结点和无头结点,引入头结点可以令所有的结点的操作方式是一致的。
5.双向链表插入节结点操作

6.双向链表的删除操作

7.顺序存储和链表存储的对比

8.线性表,栈与队列
队列先进先出,栈先进后出。
9. 
左边的队列是先进后出用法,右边的队列是先进先出用法。
这是因为左边的出口改变了左边入口的出队方式。
10.广义表
广义表的长度:最外层包含元素的个数。
广义表的深度:所含括号的重度。

例1长度为3,深度为2
例2:head(head(tail(LS1)))
11.

12.二叉树遍历
先序遍历:根左右
中序遍历:左根右
后序遍历:左右根
13.树转二叉树原则

14.查找二叉树

15.图:邻接矩阵

16.图:邻接表

17.图的最小生成树
普利姆算法:以点为出发,选取连接点的最短的线。
科鲁兹卡尔算法:以边为出发,选取整个图最短的边,依次连接。
18.时间复杂度:指程序运行从开始到结束所需的时间。
空间复杂度:指一个算法在运行过程中临时占用存储空间大小的度量。
19.顺序查找法时间复杂度O(n),平均查找长度(n+1)/2
二分查找法:在查找成功时关键字的比较次数最多为
(序列是有序排列的)。
20.希尔排序
分成不同的组,不同的组之间依次比较,同一个组中的数进行排序,然后把这个组不断扩大,不断进行同一个组内的数据比较排序。

21.直接选择排序

22.堆排序
大顶堆:将数组元素依次写下,从左边第一个非叶子结点开始比较,对元素的一个子树的三个元素进行比较,选取三个元素中,最大的一个元素充当第一个非叶子结点。

完整的堆排序
依次选择出最顶端的数据挑出,把完全二叉树最后一个元素拿出补到最顶端的元素当中,继续运行。

23.冒泡排序

24.快速排序

25.归并排序

26.


229

被折叠的 条评论
为什么被折叠?



