数据结构

书籍推荐:

软件设计师考试辅导教程--------电子工业出版社,15年3月第一版

软件设计师同步辅导(上午)----何光明,清华大学出版社

软件设计师同步辅导(下午)----张宏 ,清华大学出版社

存储结构:

顺序存储、链式存储

数据结构:

1.线性表:双向链表、循坏链表、静态链表

队列

串:空串、空格串、子串、主串

2.树和二叉树:空树、二叉排序树、平衡二叉树、线索树?、最优二叉树(哈夫曼树)

树的遍历(前序遍历、后序遍历、层次遍历)

二叉树:完全二叉树、满二叉树

二叉树的遍历(前序遍历、中序遍历、后序遍历)

3.图:有向图、无向图、完全图(有向完全图、无向完全图)、带权图、连通图、强连通图、生成树(最小生成树)

存储:邻接矩阵、邻接表、十字链表、邻接多重表

遍历:深度优先搜索、广度优先搜索

排序:拓扑排序(AVO网,不唯一)

4.排序

内部排序、外部排序

方法:

(1)插入排序:

直接插入排序,  O(n^2),O(1),稳定

希尔排序,不稳定

(2)选择排序:顺序存储结构

直接选择排序,O(n^2),O(1),稳定

堆排序(小顶堆、大顶堆),,O(1),最坏性能

(3)交换排序:

冒泡排序,O(n^2),O(1),稳定  (49,38,65,97,76,13,27,49)

快速排序(顺序存储),最好O(n^2),最坏,不稳定

(4)归并排序:,O(n),稳定

5.查找

(1)静态查找

顺序查找:线性查找。(n+1)/2,O(n)

折半查找:二分查找、对分查找。前提:有序的,不易变动。

分块查找:索引顺序查找。

(2)动态查找

哈希表:O(1).冲突

算法:

1.KMP算法:

原文地址:https://www.cnblogs.com/panpanwelcome/p/5793850.html