数据结构
云中自有锦书
量变才有质变
展开
-
转载——学习数据结构的经验
作者:知乎用户链接:https://www.zhihu.com/question/21318658/answer/63652147来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。 学习方法:我认为任何数据结构都可以从线性表演进而来。以顺序表为例,最简单的顺序表是无序的,那么增加一个要求,使其是有序的,那么只需要改动一下插入操作。依理类推,堆栈和队列,...转载 2019-01-07 09:37:03 · 436 阅读 · 3 评论 -
数据结构 二叉树的创建 12
1.二叉树的创建(#号发)1.为什么出现#方法创建树先序遍历,字符串"12345"是不能确定一棵树的请思考:会有多少种形状#创建树,让树的每一个结点都变成度数为2的树124###3##可以唯一确定一棵树吗?2.#创建树练习先序遍历:ABDH#K###E##CFI###G#J##,请画出树的形状3.代码思路:利用前序遍历来建树(结点值陆续从键盘输入,用DLR为...原创 2019-03-12 11:45:52 · 455 阅读 · 0 评论 -
数据结构 seqlist类模板(C++) 11
seqlist类模板(C++)#pragma oncetemplate <typename T>class SeqList{public: SeqList(int Capacity); ~SeqList(void); int getLen(); int getCapacity(); int insert(T &t, int pos); int...原创 2019-03-11 21:41:27 · 2126 阅读 · 0 评论 -
数据结构 树的非递归遍历10
中序遍历非递归算法思想中序遍历的几种情况:分析1:什么时候访问根、什么时候访问左子树、什么访问右子树 当左子树为空或者左子树已经访问完毕以后,再访问根 访问完毕根以后,再访问右子树分析2:为什么是栈,而不是其他(比如说是队列) 先走到的后访问,后走到的先访问,显然是栈结构分析3:结点所有路径情况...原创 2019-03-11 17:02:33 · 176 阅读 · 0 评论 -
数据结构 树的基本操练 9
1.求树的叶子结点例:编写递归算法,计算二叉树中叶子结点的数目。思路:输出叶子结点比较简单,用任何一种遍历算法,凡是左右指针均空者,则为叶子,将其统计并打印出来。DLR_CountLeafNum(NODE *root)//采用中序遍历的递归算法{ if ( root) //非空二叉树条件,还可写成if(root !=NULL ) { if(!root->lc...原创 2019-03-11 11:32:13 · 139 阅读 · 0 评论 -
数据结构 遍历二叉树 8
遍历二叉树(Traversing Binary Tree)相关定义遍历定义——指按某条搜索路线遍访每个结点且不重复(又称周游)。遍历用途——它是树结构插入、删除、修改、查找和排序运算的前提,是二叉树一切运算的基础和核心。 遍历方法——牢记一种约定,对每个结点的查看都是“先左后右” 。遍历规则———(1)二叉树由根、左子树、右子树构成,定义为D、 L、R(2)D、 L、...原创 2019-03-04 20:15:03 · 303 阅读 · 0 评论 -
数据结构 树的基本概念 7
目录:树和二叉树1) 树的基本知识 2)二叉树 3)遍历二叉树和线索二叉树4)树和森林 5)赫夫曼树及其应用 特点:非线性结构,一个直接前驱,但可能有多个直...原创 2019-03-02 20:52:53 · 260 阅读 · 0 评论 -
数据结构 栈 5
目录:Stack基本概念:Stack的常用操作栈的顺序存储设计与实现1)基本概念 2)设计与实现栈的链式存储设计与实现1)基本概念 2)设计与实现栈的应用1.Stack 基本概念1)栈是一种特殊的线性表栈仅能在线性表的一端进行操作: 栈顶(Top):允许操作的一端 ...原创 2019-02-24 17:31:04 · 241 阅读 · 0 评论 -
数据结构 队列 6
目录:队列基本概念:常用操作队列的顺序存储设计与实现1)基本概念 2)设计与实现队列的链式存储设计与实现1)基本概念 2)设计与实现总结回顾1.队列基本概念队列是一种特殊的线性表队列仅在线性表的两端进行操作队头(Front):取出数据元素的一端队尾(Rear):插入数据元...原创 2019-02-25 11:18:44 · 164 阅读 · 0 评论 -
数据结构 线性表设计与实现 4(2)
目录:循环链表1)基本概念 2)设计与实现 3)优点和缺点双向链表1)基本概念 2)设计与实现 3)优点和缺点1.循环链表1)基本概念循环链表的定义,将单链表中最后一个数据元素的next指针指向第一个元素循环链表拥有单链表的...原创 2019-02-19 15:48:47 · 215 阅读 · 0 评论 -
数据结构 线性表设计与实现 4(1)
目录:线性表基本概念1)线性表定义 2)数学定义3)性质 4)练习线性表的顺序存储结构1)基本概念 2)设计与实现 3)优点和缺点线性表的链式存储1)基本概念 2)设计与实现 ...原创 2019-02-17 11:49:05 · 631 阅读 · 0 评论 -
数据结构 实用概念和算法 3
目录:数据结构实用概念1)数据结构中的基本概念 2)数据的逻辑结构3)数据的物理结构 4)数据的运算算法1)算法概念 2)算法和数据结构的区别3)算法特性 4)算法效率的度量1.数据结构的基本概念数据:程序的操作对象,用于描述...原创 2019-02-15 14:22:35 · 251 阅读 · 0 评论 -
数据结构 课程总体安排 2
day01 day02数据结构基本概念 数据结构课程学习方法思路 数据结构概念 算法基本概念和算法的度量链表的设计与实现 顺序存储 seqList 链式存储 单向链表linklist 循环链表circlelist 双向链表...原创 2019-02-15 09:27:40 · 406 阅读 · 0 评论 -
数据结构(C++语言版)知识点总结1
0.前言学习目的:学习数据结构,就是要学会高效地利用计算机(1)有效地存储、组织、传递和转换数据(2)掌握各类数据结构功能、表示、实现和基本操作接口(3)理解各类(基本)算法与不同数据结构之间的内在联系(4)了解各类数据结构适用的应用环境(5)灵活地选用各类(基本)算法及对应的数据结构,解决实际问题内容纵览:(1)各数据结构的ADT接口及其不同实现序列(向量、列...原创 2019-02-14 20:40:55 · 1080 阅读 · 0 评论 -
数据结构 二叉线索树和霍夫曼树 13
二叉线索树1.概念普通二叉树只能找到结点的左右孩子信息,而该结点的直接前驱和直接后继只能在遍历过程中获得若将遍历后对应的有关前驱和后继预存起来,则从第一个结点开始就能很快“顺藤摸瓜”而遍历整个树了二叉线索树思想是干什么的?线索化过程就是在遍历过程(假设是中序遍历)中修改空指针的过程将空的lchild改为结点的直接前驱将空的rchild改为结点的直接后继...原创 2019-03-12 17:31:52 · 161 阅读 · 0 评论