数据结构笔记整理第9章:数据结构规律类识点(1)

来源:互联网 发布:串口软件 编辑:程序博客网 时间:2024/05/23 01:22

第9章 数据结构规律类识点

本章内容

本章主要总结了笔者在复习过程中遇到的规律性质并且易错的知识点,希望不仅对考研的童鞋有帮助,还可以为秋招的童鞋带来参考。

9.1 线性表、栈、队列和矩阵部分

1.循环队列有M个单元,最多能存储(M-1)个队列元素,当前实际存储(R-F+M)%M个队列元素。
2.顺序线性表有n个元素,在第i个位置上插入一个数据元素,需要移动(n-i+1)个数据元素,删除第i个位置上的数据元素,需要移动(n-i)个元素。
3.建立一个长度为n的有序单链表时间复杂度为O(n^2)。
4.无论线性表采用顺序存储结构还是链式存储结构,删除值为X的结点,时间复杂度均为O(n)。因为在链表里面找到该结点需要O(n),再删除为O(1)。
5.稀疏矩阵的压缩存储可用一个三元组来表示稀疏矩阵中的非零元素。
6.数据结构从逻辑上划分为:线型结构、树型结构和图型结构。
7.数据结构从存储结构上划分为:顺序结构和链式结构。
8.四个方面评价算法的质量:正确性、易读性、健壮性和高效率。
9.数据结构中,可以用存储顺序代表逻辑顺序的数据结构是:顺序结构。

9.2 树部分

1.二叉树的树高: 1+⌊logn⌋。
2.在二叉排序树中,插入一个结点的时间复杂度是O(logn)。
3.在二叉排序树上查找结点的平均时间复杂度是O(logn)。
4.向二叉树排序树中插入一个结点,则该结点一定成为叶子结点。
5.向二叉排序树中插入一个结点,需要比较的次数不会大于该二叉树的高度。
6.若一个叶子结点是某二叉树中序遍历的最后一个节点,则它必是该二叉树先序遍历中的最后一个结点。
7.设二叉排序树的高度为h,则在该树中查找关键字key的最多需要比较次数为h次。
8.链表存储一棵二叉树,每个结点除了数据域外,还有指向左孩子和右孩子的两个指针。则n个结点的二叉树共有2n个指针域,(n-1)个存放了地址,(n+1)个是空指针。
9.先序遍历+中序遍历或者中序遍历+后序遍历可以确定唯一一棵二叉树,然而先序遍历+后序遍历不能确定。

9.3 图部分

1.带权无向图的最小生成树不是唯一的。
2.完全图:任意两个顶点之间有边相连。因此完全有向图共有n(n-1)条边,完全无向图共有n(n-1)/2条边。
3.有向图的邻接表和逆邻接表中表结点的个数一定相等。
4.设无向图中有n个顶点和e条边,则用邻接矩阵作为图的存储结构进行深度或者广度优先遍历,时间复杂度为O(n^2)。
5.用邻接表作为图的存储结构进行深度或者广度优先遍历的时间复杂度为O(n+e)。
6.图的邻接表描述了结点的出度情况,图的逆邻接表描述了图的入度情况。
7.用邻接矩阵存储n个顶点,e条边的有向图,则删除与某个顶点相邻的所有边的时间复杂度为:O(n),删除结点i的时间复杂度是O(n)。

9.4 排序部分

1.内部排序中,占用空间最多的是归并排序:O(n)。
2.用筛选法建堆的时候,从n/2的地方开始筛选。
3.时间复杂度不受数据初始状态影响而恒为O(nlogn)的是堆排序。
4.快速排序空间复杂度:平均是O(logn),最坏是O(n)。
5.堆排序中调整堆:叶子结点不用调整。
6.基于比较的排序算法,对n个数排序,比较次数至少是O(nlogn)。

9.5 查找部分

1.二分查找不超过1+⌊logn⌋,即不超过树的高度。
2.如果两个关键字的值不等,但哈希函数值相同,则称这两个关键字为同义词。
3,假设一棵m叉树的结点数为n,用多重链表表示其存储结构,则该树中有n(m-1)+1个空指针域。
4.应用Hash查找技术,必须解决两个问题:构造合适的哈希函数和解决冲突的问题。
5.非空B-树中根结点最少可以有2棵子树,其他非终端结点至少含有⌈m/2⌉棵子树,叶结点最多m棵子树,m-1ge关键字。
6.在存储信息过程中,用关键字大小来确定存储位置的数据结构是哈希表。

0 0
原创粉丝点击