数据结构学习笔记4——结构梳理
2014-06-25 20:22
162 查看
把数据结构几种基本结构过了一遍以后,简单的梳理一遍,以便于之后的复习。
1:如果理解各种数据结构下的各种存储结构?
从视点的不同来说,数据结构分为逻辑结构和物理结构。
逻辑结构:数据对象中数据元素之间的相互关系。
线性表、树、图都是反应的是数据元素之间的相互关系。
物理结构(存储结构):反应的是数据的逻辑结构在计算机中的存储形式。
顺序存储结构和链式存储结构就是他的物理结构。
2:每种结构的struct是什么样的?
如树中用结点表示数据元素,那每个结点包含的“内容”有哪些?
不同的存储结构它的结点结构式不一样的?
(由于本章内容只做结构梳理,具体内容会在接下来的内容中补充完整)
3:对每一种结构的具体操作有哪些?
线性表: 存储结构
链式存储结构
栈:栈的顺序结构与链式结构
队列:循环队列与链式存储结构
串:串的两种存储结构
树:树与二叉树的存储结构
图:图的存储结构
4:由各种存储结构衍生出来的运用有哪些(经典的算法)?
栈:递归
串:定位匹配运用:朴素的模式匹配算法与KMP模式匹配算法
树:赫夫曼树与赫夫曼编码
图:求最小生成树:普利姆算法、克鲁斯卡尔算法
求最短路径:迪杰斯特拉算法、佛洛依德算法
求关键路径:关键路径算法、拓扑排序算法
5:能不能用一种语言把各种算法实现一遍以及把各种数据结构的操作实现一遍?
例如一些常见的面试题(来源于程序员面试宝典):
5.1链表
(1)编程实现一个单链表的建立、测长、打印
(2)编程实现单链表删除节点
(3)编程实现单链表的插入
(4)编程实现单链表的排序
(5)编程实现单链表的逆置
5.2双链表
(1)编程实现双链表的建立
(2)编程实现双链表的删除、插入节点
5.3循环链表
运用C++实现某个算法?
5.4队列
(1)编程实现队列的入队、出队操作
5.5栈
(1)编程实现入栈、出栈操作
5.6 堆
堆栈、堆栈我们经常性提到堆栈堆栈的问题,那堆和栈是一回事么?
如何理解堆(heap)与栈(stack)的区别?
5.7树、图、哈希表
这类问题在面试中很少涉及到编程实现的问题,一般性就是提出一个问题叫你运用树、图的思路来分析问题。这就需要我们对树、图、哈希表能够深入的了解。
1:如果理解各种数据结构下的各种存储结构?
从视点的不同来说,数据结构分为逻辑结构和物理结构。
逻辑结构:数据对象中数据元素之间的相互关系。
线性表、树、图都是反应的是数据元素之间的相互关系。
物理结构(存储结构):反应的是数据的逻辑结构在计算机中的存储形式。
顺序存储结构和链式存储结构就是他的物理结构。
2:每种结构的struct是什么样的?
如树中用结点表示数据元素,那每个结点包含的“内容”有哪些?
不同的存储结构它的结点结构式不一样的?
(由于本章内容只做结构梳理,具体内容会在接下来的内容中补充完整)
3:对每一种结构的具体操作有哪些?
线性表: 存储结构
链式存储结构
栈:栈的顺序结构与链式结构
队列:循环队列与链式存储结构
串:串的两种存储结构
树:树与二叉树的存储结构
图:图的存储结构
4:由各种存储结构衍生出来的运用有哪些(经典的算法)?
栈:递归
串:定位匹配运用:朴素的模式匹配算法与KMP模式匹配算法
树:赫夫曼树与赫夫曼编码
图:求最小生成树:普利姆算法、克鲁斯卡尔算法
求最短路径:迪杰斯特拉算法、佛洛依德算法
求关键路径:关键路径算法、拓扑排序算法
5:能不能用一种语言把各种算法实现一遍以及把各种数据结构的操作实现一遍?
例如一些常见的面试题(来源于程序员面试宝典):
5.1链表
(1)编程实现一个单链表的建立、测长、打印
(2)编程实现单链表删除节点
(3)编程实现单链表的插入
(4)编程实现单链表的排序
(5)编程实现单链表的逆置
5.2双链表
(1)编程实现双链表的建立
(2)编程实现双链表的删除、插入节点
5.3循环链表
运用C++实现某个算法?
5.4队列
(1)编程实现队列的入队、出队操作
5.5栈
(1)编程实现入栈、出栈操作
5.6 堆
堆栈、堆栈我们经常性提到堆栈堆栈的问题,那堆和栈是一回事么?
如何理解堆(heap)与栈(stack)的区别?
5.7树、图、哈希表
这类问题在面试中很少涉及到编程实现的问题,一般性就是提出一个问题叫你运用树、图的思路来分析问题。这就需要我们对树、图、哈希表能够深入的了解。
相关文章推荐
- 【学习笔记----数据结构16-图的存储结构】
- 数据结构学习笔记之树结构
- 数据结构学习笔记--线性结构(链表)
- 数据结构学习笔记之线性结构--离散存储[链表]
- 网易云课堂-陈越、何钦铭-数据结构-2016春,02-线性结构1 一元多项式的乘法与加法运算,学习笔记
- 数据结构与算法学习笔记之--数据结构
- 数据结构 学习笔记(二):线性结构:线性表(顺序表,链表,广义表,多重链表)
- 学习笔记 数据结构 堆结构
- Laravel学习笔记(五)数据库 数据库迁移案例2——创建数据结构,数据表,修改数据结构
- python数据结构学习笔记-2016-11-26-02-树结构
- 深层次两张图解经典6大排序与6大基础数据结构——学完这些,妈妈再也不用担心我的排序算法与数据结构,学习笔记大放送
- 数据结构学习笔记一:数据结构基础
- 数据结构 学习笔记(三):线性结构:堆栈,队列,表达式求值,多项式加法运算
- 数据结构学习笔记之图结构
- 数据结构学习笔记——二叉树的存储结构
- 小楼一阁的数据结构学习笔记(一、数据结构绪论)
- 【Java数据结构学习笔记之一】线性表的存储结构及其代码实现
- 数据结构学习笔记--迷宫
- Javascript学习笔记(二)Javascript核心之语法结构
- 严蔚敏数据结构学习笔记六.树和二叉树