程序员数据结构学习笔记 .pdf
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《程序员数据结构学习笔记 .pdf》由会员分享,可在线阅读,更多相关《程序员数据结构学习笔记 .pdf(37页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、程序员数据结构笔记作者:来源:点击:136 日期:2008-3-16 15:34:27 知识:1.数据结构中对象的定义,存储的表示及操作的实现.2.线性:线性表、栈、队列、数组、字符串(广义表不考)树:二叉树集合:查找,排序图(不考)能力:分析,解决问题的能力过程:确定问题的数据。确定数据间的关系。确定存储结构(顺序数组、链表指针)确定算法 编程 算法评价(时间和空间复杂度,主要考时间复杂度)一、数组1、存放于一个连续的空间2、一维多维数组的地址计算方式已知 data00的内存地址,且已知一个元素所占内存空间求dataij在内存中的地址。公式:(add+(i*12+j)*S)(假设此数组为da
2、ta1012)注意:起始地址不是data00时候的情况。起始地址为data-38和情况;3、顺序表的定义存储表示及相关操作4、顺序表操作中时间复杂度估计5、字符串的定义(字符串就是线性表),存储表示模式匹配算法(简单和KMP(不考)6、特殊矩阵:存储方法(压缩存储(按行,按列)名师资料总结-精品资料欢迎下载-名师精心整理-第 1 页,共 37 页 -程序员数据结构笔记作者:来源:点击:136 日期:2008-3-16 15:34:27 知识:1.数据结构中对象的定义,存储的表示及操作的实现.2.线性:线性表、栈、队列、数组、字符串(广义表不考)树:二叉树集合:查找,排序图(不考)能力:分析,解
3、决问题的能力过程:确定问题的数据。确定数据间的关系。确定存储结构(顺序数组、链表指针)确定算法 编程 算法评价(时间和空间复杂度,主要考时间复杂度)一、数组1、存放于一个连续的空间2、一维多维数组的地址计算方式已知 data00的内存地址,且已知一个元素所占内存空间求dataij在内存中的地址。公式:(add+(i*12+j)*S)(假设此数组为data1012)注意:起始地址不是data00时候的情况。起始地址为data-38和情况;3、顺序表的定义存储表示及相关操作4、顺序表操作中时间复杂度估计5、字符串的定义(字符串就是线性表),存储表示模式匹配算法(简单和KMP(不考)6、特殊矩阵:存
4、储方法(压缩存储(按行,按列)名师资料总结-精品资料欢迎下载-名师精心整理-第 2 页,共 37 页 -程序员数据结构笔记作者:来源:点击:136 日期:2008-3-16 15:34:27 知识:1.数据结构中对象的定义,存储的表示及操作的实现.2.线性:线性表、栈、队列、数组、字符串(广义表不考)树:二叉树集合:查找,排序图(不考)能力:分析,解决问题的能力过程:确定问题的数据。确定数据间的关系。确定存储结构(顺序数组、链表指针)确定算法 编程 算法评价(时间和空间复杂度,主要考时间复杂度)一、数组1、存放于一个连续的空间2、一维多维数组的地址计算方式已知 data00的内存地址,且已知一
5、个元素所占内存空间求dataij在内存中的地址。公式:(add+(i*12+j)*S)(假设此数组为data1012)注意:起始地址不是data00时候的情况。起始地址为data-38和情况;3、顺序表的定义存储表示及相关操作4、顺序表操作中时间复杂度估计5、字符串的定义(字符串就是线性表),存储表示模式匹配算法(简单和KMP(不考)6、特殊矩阵:存储方法(压缩存储(按行,按列)名师资料总结-精品资料欢迎下载-名师精心整理-第 3 页,共 37 页 -程序员数据结构笔记作者:来源:点击:136 日期:2008-3-16 15:34:27 知识:1.数据结构中对象的定义,存储的表示及操作的实现.
6、2.线性:线性表、栈、队列、数组、字符串(广义表不考)树:二叉树集合:查找,排序图(不考)能力:分析,解决问题的能力过程:确定问题的数据。确定数据间的关系。确定存储结构(顺序数组、链表指针)确定算法 编程 算法评价(时间和空间复杂度,主要考时间复杂度)一、数组1、存放于一个连续的空间2、一维多维数组的地址计算方式已知 data00的内存地址,且已知一个元素所占内存空间求dataij在内存中的地址。公式:(add+(i*12+j)*S)(假设此数组为data1012)注意:起始地址不是data00时候的情况。起始地址为data-38和情况;3、顺序表的定义存储表示及相关操作4、顺序表操作中时间复
7、杂度估计5、字符串的定义(字符串就是线性表),存储表示模式匹配算法(简单和KMP(不考)6、特殊矩阵:存储方法(压缩存储(按行,按列)名师资料总结-精品资料欢迎下载-名师精心整理-第 4 页,共 37 页 -程序员数据结构笔记作者:来源:点击:136 日期:2008-3-16 15:34:27 知识:1.数据结构中对象的定义,存储的表示及操作的实现.2.线性:线性表、栈、队列、数组、字符串(广义表不考)树:二叉树集合:查找,排序图(不考)能力:分析,解决问题的能力过程:确定问题的数据。确定数据间的关系。确定存储结构(顺序数组、链表指针)确定算法 编程 算法评价(时间和空间复杂度,主要考时间复杂
8、度)一、数组1、存放于一个连续的空间2、一维多维数组的地址计算方式已知 data00的内存地址,且已知一个元素所占内存空间求dataij在内存中的地址。公式:(add+(i*12+j)*S)(假设此数组为data1012)注意:起始地址不是data00时候的情况。起始地址为data-38和情况;3、顺序表的定义存储表示及相关操作4、顺序表操作中时间复杂度估计5、字符串的定义(字符串就是线性表),存储表示模式匹配算法(简单和KMP(不考)6、特殊矩阵:存储方法(压缩存储(按行,按列)名师资料总结-精品资料欢迎下载-名师精心整理-第 5 页,共 37 页 -程序员数据结构笔记作者:来源:点击:13
9、6 日期:2008-3-16 15:34:27 知识:1.数据结构中对象的定义,存储的表示及操作的实现.2.线性:线性表、栈、队列、数组、字符串(广义表不考)树:二叉树集合:查找,排序图(不考)能力:分析,解决问题的能力过程:确定问题的数据。确定数据间的关系。确定存储结构(顺序数组、链表指针)确定算法 编程 算法评价(时间和空间复杂度,主要考时间复杂度)一、数组1、存放于一个连续的空间2、一维多维数组的地址计算方式已知 data00的内存地址,且已知一个元素所占内存空间求dataij在内存中的地址。公式:(add+(i*12+j)*S)(假设此数组为data1012)注意:起始地址不是data
10、00时候的情况。起始地址为data-38和情况;3、顺序表的定义存储表示及相关操作4、顺序表操作中时间复杂度估计5、字符串的定义(字符串就是线性表),存储表示模式匹配算法(简单和KMP(不考)6、特殊矩阵:存储方法(压缩存储(按行,按列)名师资料总结-精品资料欢迎下载-名师精心整理-第 6 页,共 37 页 -程序员数据结构笔记作者:来源:点击:136 日期:2008-3-16 15:34:27 知识:1.数据结构中对象的定义,存储的表示及操作的实现.2.线性:线性表、栈、队列、数组、字符串(广义表不考)树:二叉树集合:查找,排序图(不考)能力:分析,解决问题的能力过程:确定问题的数据。确定数
11、据间的关系。确定存储结构(顺序数组、链表指针)确定算法 编程 算法评价(时间和空间复杂度,主要考时间复杂度)一、数组1、存放于一个连续的空间2、一维多维数组的地址计算方式已知 data00的内存地址,且已知一个元素所占内存空间求dataij在内存中的地址。公式:(add+(i*12+j)*S)(假设此数组为data1012)注意:起始地址不是data00时候的情况。起始地址为data-38和情况;3、顺序表的定义存储表示及相关操作4、顺序表操作中时间复杂度估计5、字符串的定义(字符串就是线性表),存储表示模式匹配算法(简单和KMP(不考)6、特殊矩阵:存储方法(压缩存储(按行,按列)名师资料总
12、结-精品资料欢迎下载-名师精心整理-第 7 页,共 37 页 -程序员数据结构笔记作者:来源:点击:136 日期:2008-3-16 15:34:27 知识:1.数据结构中对象的定义,存储的表示及操作的实现.2.线性:线性表、栈、队列、数组、字符串(广义表不考)树:二叉树集合:查找,排序图(不考)能力:分析,解决问题的能力过程:确定问题的数据。确定数据间的关系。确定存储结构(顺序数组、链表指针)确定算法 编程 算法评价(时间和空间复杂度,主要考时间复杂度)一、数组1、存放于一个连续的空间2、一维多维数组的地址计算方式已知 data00的内存地址,且已知一个元素所占内存空间求dataij在内存中
13、的地址。公式:(add+(i*12+j)*S)(假设此数组为data1012)注意:起始地址不是data00时候的情况。起始地址为data-38和情况;3、顺序表的定义存储表示及相关操作4、顺序表操作中时间复杂度估计5、字符串的定义(字符串就是线性表),存储表示模式匹配算法(简单和KMP(不考)6、特殊矩阵:存储方法(压缩存储(按行,按列)名师资料总结-精品资料欢迎下载-名师精心整理-第 8 页,共 37 页 -程序员数据结构笔记作者:来源:点击:136 日期:2008-3-16 15:34:27 知识:1.数据结构中对象的定义,存储的表示及操作的实现.2.线性:线性表、栈、队列、数组、字符串
14、(广义表不考)树:二叉树集合:查找,排序图(不考)能力:分析,解决问题的能力过程:确定问题的数据。确定数据间的关系。确定存储结构(顺序数组、链表指针)确定算法 编程 算法评价(时间和空间复杂度,主要考时间复杂度)一、数组1、存放于一个连续的空间2、一维多维数组的地址计算方式已知 data00的内存地址,且已知一个元素所占内存空间求dataij在内存中的地址。公式:(add+(i*12+j)*S)(假设此数组为data1012)注意:起始地址不是data00时候的情况。起始地址为data-38和情况;3、顺序表的定义存储表示及相关操作4、顺序表操作中时间复杂度估计5、字符串的定义(字符串就是线性
15、表),存储表示模式匹配算法(简单和KMP(不考)6、特殊矩阵:存储方法(压缩存储(按行,按列)名师资料总结-精品资料欢迎下载-名师精心整理-第 9 页,共 37 页 -程序员数据结构笔记作者:来源:点击:136 日期:2008-3-16 15:34:27 知识:1.数据结构中对象的定义,存储的表示及操作的实现.2.线性:线性表、栈、队列、数组、字符串(广义表不考)树:二叉树集合:查找,排序图(不考)能力:分析,解决问题的能力过程:确定问题的数据。确定数据间的关系。确定存储结构(顺序数组、链表指针)确定算法 编程 算法评价(时间和空间复杂度,主要考时间复杂度)一、数组1、存放于一个连续的空间2、
16、一维多维数组的地址计算方式已知 data00的内存地址,且已知一个元素所占内存空间求dataij在内存中的地址。公式:(add+(i*12+j)*S)(假设此数组为data1012)注意:起始地址不是data00时候的情况。起始地址为data-38和情况;3、顺序表的定义存储表示及相关操作4、顺序表操作中时间复杂度估计5、字符串的定义(字符串就是线性表),存储表示模式匹配算法(简单和KMP(不考)6、特殊矩阵:存储方法(压缩存储(按行,按列)名师资料总结-精品资料欢迎下载-名师精心整理-第 10 页,共 37 页 -程序员数据结构笔记作者:来源:点击:136 日期:2008-3-16 15:3
17、4:27 知识:1.数据结构中对象的定义,存储的表示及操作的实现.2.线性:线性表、栈、队列、数组、字符串(广义表不考)树:二叉树集合:查找,排序图(不考)能力:分析,解决问题的能力过程:确定问题的数据。确定数据间的关系。确定存储结构(顺序数组、链表指针)确定算法 编程 算法评价(时间和空间复杂度,主要考时间复杂度)一、数组1、存放于一个连续的空间2、一维多维数组的地址计算方式已知 data00的内存地址,且已知一个元素所占内存空间求dataij在内存中的地址。公式:(add+(i*12+j)*S)(假设此数组为data1012)注意:起始地址不是data00时候的情况。起始地址为data-3
18、8和情况;3、顺序表的定义存储表示及相关操作4、顺序表操作中时间复杂度估计5、字符串的定义(字符串就是线性表),存储表示模式匹配算法(简单和KMP(不考)6、特殊矩阵:存储方法(压缩存储(按行,按列)名师资料总结-精品资料欢迎下载-名师精心整理-第 11 页,共 37 页 -程序员数据结构笔记作者:来源:点击:136 日期:2008-3-16 15:34:27 知识:1.数据结构中对象的定义,存储的表示及操作的实现.2.线性:线性表、栈、队列、数组、字符串(广义表不考)树:二叉树集合:查找,排序图(不考)能力:分析,解决问题的能力过程:确定问题的数据。确定数据间的关系。确定存储结构(顺序数组、
19、链表指针)确定算法 编程 算法评价(时间和空间复杂度,主要考时间复杂度)一、数组1、存放于一个连续的空间2、一维多维数组的地址计算方式已知 data00的内存地址,且已知一个元素所占内存空间求dataij在内存中的地址。公式:(add+(i*12+j)*S)(假设此数组为data1012)注意:起始地址不是data00时候的情况。起始地址为data-38和情况;3、顺序表的定义存储表示及相关操作4、顺序表操作中时间复杂度估计5、字符串的定义(字符串就是线性表),存储表示模式匹配算法(简单和KMP(不考)6、特殊矩阵:存储方法(压缩存储(按行,按列)名师资料总结-精品资料欢迎下载-名师精心整理-
20、第 12 页,共 37 页 -程序员数据结构笔记作者:来源:点击:136 日期:2008-3-16 15:34:27 知识:1.数据结构中对象的定义,存储的表示及操作的实现.2.线性:线性表、栈、队列、数组、字符串(广义表不考)树:二叉树集合:查找,排序图(不考)能力:分析,解决问题的能力过程:确定问题的数据。确定数据间的关系。确定存储结构(顺序数组、链表指针)确定算法 编程 算法评价(时间和空间复杂度,主要考时间复杂度)一、数组1、存放于一个连续的空间2、一维多维数组的地址计算方式已知 data00的内存地址,且已知一个元素所占内存空间求dataij在内存中的地址。公式:(add+(i*12
21、+j)*S)(假设此数组为data1012)注意:起始地址不是data00时候的情况。起始地址为data-38和情况;3、顺序表的定义存储表示及相关操作4、顺序表操作中时间复杂度估计5、字符串的定义(字符串就是线性表),存储表示模式匹配算法(简单和KMP(不考)6、特殊矩阵:存储方法(压缩存储(按行,按列)名师资料总结-精品资料欢迎下载-名师精心整理-第 13 页,共 37 页 -程序员数据结构笔记作者:来源:点击:136 日期:2008-3-16 15:34:27 知识:1.数据结构中对象的定义,存储的表示及操作的实现.2.线性:线性表、栈、队列、数组、字符串(广义表不考)树:二叉树集合:查
22、找,排序图(不考)能力:分析,解决问题的能力过程:确定问题的数据。确定数据间的关系。确定存储结构(顺序数组、链表指针)确定算法 编程 算法评价(时间和空间复杂度,主要考时间复杂度)一、数组1、存放于一个连续的空间2、一维多维数组的地址计算方式已知 data00的内存地址,且已知一个元素所占内存空间求dataij在内存中的地址。公式:(add+(i*12+j)*S)(假设此数组为data1012)注意:起始地址不是data00时候的情况。起始地址为data-38和情况;3、顺序表的定义存储表示及相关操作4、顺序表操作中时间复杂度估计5、字符串的定义(字符串就是线性表),存储表示模式匹配算法(简单
23、和KMP(不考)6、特殊矩阵:存储方法(压缩存储(按行,按列)名师资料总结-精品资料欢迎下载-名师精心整理-第 14 页,共 37 页 -2)所有叶子节点都在同一层。3)B 树的所有子树也是一棵B 树。特点:降低层次数,减少比较次数。排序一、知识点1、排序的定义/内排序:只在内存中进行2、排序的分类外排序:与内外存进行排序内排序:/直接插入排序1)插入排序shell排序/冒泡排序2)交换排序快速排序/简单选择排序3)选择排序堆 锦标赛排序4)归并排序(二路)5)基数排序(多关链字排序)3、时间复杂度(上午题目常考,不会求也得记住啊兄弟姐妹们!)*15*15*/稳定*15 15*(前后不变)排序
24、 不稳定*15 15*(前后改变)经整理得:选择、希尔、堆、快速排序是不稳定的;直接插入、冒泡、合并排序是稳定的。锦标赛排序方法:13161118213176 名师资料总结-精品资料欢迎下载-名师精心整理-第 15 页,共 37 页 -/131136 /113/3(胜出,将其拿出,并令其为正无穷&Go On)归并排序方法:13161118213176 /13,1611,183,216,17/11,13,16,183,6,17,21/3,6,11,13,16,17,18,21 shell 排序算法:1)定义一个步长(或者说增量)数组Dm;其中:Dm-1=1(最后一个增量必须为 1,否则可能不完全
25、)2)共排 m 趟,其中第 i 趟增量为 Di,把整个序列分成Di 个子序列,分别对这 Di个子序列进行直接插入排序。程序如下:for(i=0;im;i+)for(j=0;j13161118213176248-j 先从后往前找,再从前往后找。思想:空一个插入一个,i 空 j 挪,j 空 i 挪(这里的i,j 是指 i,j 两指针所指的下标)。名师资料总结-精品资料欢迎下载-名师精心整理-第 16 页,共 37 页 -/131136 /113/3(胜出,将其拿出,并令其为正无穷&Go On)归并排序方法:13161118213176 /13,1611,183,216,17/11,13,16,18
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 程序员数据结构学习笔记 2022 程序员 数据结构 学习 笔记
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内