数据结构
文章平均质量分 61
Large_bearR
已毕业,专业软件工程。
专注于c++,java特别是web应用开发。
有强迫癌。
现在就职于某外企。
关注搜索某乎ID:子非鱼
展开
-
线性表
今天开始复习了一下数据结构的知识.用的书是严蔚敏版本的>线性表线性表:诸如由n(n>=0)个数据特性相同的元素构成的有限序列叫做线性表.从定义可以提取两点:(1)线性表的元素应属于同一数据对象.比如:全部属于int类型,全部属于char类型,或者全部属于同一个类类型的对象(学生,教师等).(2)线性表的长度是有限的.注意几个专业术语:数据元素,数据项(它们的区别原创 2016-07-31 16:06:58 · 337 阅读 · 0 评论 -
郝夫曼树
今天复习了郝夫曼树,郝夫曼编码. 郝夫曼树又称作最优树,是一类带权路径长度最短的树. 所以这里有一个概念就是结点的带权路径长度和树的带权路径长度.结点的带权路径长度:树中所有结点到树根之间的路径长度与结点上权的乘积. 树的带权路径长度:树中所有叶子结点的带权路径长度之和(只是叶子结点而非所有结点). 权在不同的实际应用中有不同的含义,郝夫曼编码中的权指的是字符出现的频率(或者说次数)。背景原创 2016-08-08 20:59:23 · 1014 阅读 · 0 评论 -
二叉树遍历算法的应用
先序遍历创建二叉链表 算法描述 void CreateBiTre(BiTree &T){ //按先序顺序输入二叉树中结点的值(一个字符),创建二叉链表表示的二叉树T cin>>ch; if(ch==’#’) T==NULL; else{ T=new BiTNode;原创 2016-08-08 10:29:03 · 1244 阅读 · 0 评论 -
根据遍历序列确定二叉树
结论 由二叉树的先序序列(PreorderTraverse)和中序序列(InorderTraverse)或由其后序序列(PostorderTraverse)和中序序列均能唯一地确定一棵二叉树.证明 (1)先序序列第一个结点一定是二叉树的根节点 (2)根节点在中序序列中必然将中序序列分割为两个子序列,前一个序列为根节点的左子树的中序序列,后一个序列为根节点的右子树的中序序列 (3)递归使用以原创 2016-08-07 22:06:05 · 3003 阅读 · 6 评论 -
遍历二叉树和线索二叉树
背景 在二叉树的应用中,常常要求在树中查找具有某种特征的结点,或者是树中的全部结点逐一处理.遍历二叉树定义 按某条搜索路径寻访树中每个结点,使得每个结点均被访问一次,而且仅被访问一次.实质 二叉树的线性化的过程,将非线性结构中的树中结点排成一个线性序列二叉树=根节点+左子树+右子树 用L,D ,R分别表示遍历左子树,访问根结点,遍历右子树可以LDR.DLR,LRD,RDL,DRL,RLD,6原创 2016-08-06 20:45:36 · 799 阅读 · 0 评论 -
二叉树的存储结构
存储数据包括两部分:数据+数据间的逻辑关系(结构)类似线性表,二叉树的存储结构也包括顺序存储,链式存储1.顺序存储 使用一组地址连续的存储单元来存储数据元素,为了能够在存储结构中反映出结点之间的逻辑关系,必须将二叉树中的结点按照一定规律安排在这组单元. 本质:因为要体现数据之间的逻辑关系,所以要有规律.满二叉树是最理想的二叉树,从根节点开始给结点编号,按照自上而下,从左到右编号.那么可以用一个一原创 2016-08-06 14:51:04 · 1800 阅读 · 0 评论 -
二叉树
定义:是n(n>=0)个结点所构成的集合,它或为空树(n=0);或为非空树,对于非空树T:(1)有且仅有一个称作根的结点。(2)除根节点以外的其余结点分为两个互不相交的自己T1和T2,分别称为T的左子树和右子树,且都是二叉树.对比树的定义,主要区别有以下两点:(1)二叉树的每个结点至多只有两颗子树(即二叉树不存在度大于2的结点 )(2)二叉树的子树有左右之分,其次序不能颠倒(即二叉树是原创 2016-08-02 12:02:14 · 516 阅读 · 0 评论 -
树的定义及基本术语
树:是n(>=0)个结点的有限集,它或为空树(n=0);或为非空树,对于非空树T: (1)有且仅有一个称之为根的结点; (2)除根结点以外的其余节点可分为 m(m>0)互不相交的有限集T1,T2,…,Tm,其中每一个集合本身又是一棵树,并且称为根的子树(subtree). 从树的定义中我们要知道树的固有特性,即树的定义中又用到了树的定义,是一个递归的定义.树的表现形式: (1)树结构原创 2016-08-02 10:14:40 · 3190 阅读 · 0 评论 -
数据结构基本概念
数据:是客观事物的符号表示,是所有能输入到计算机并被计算机程序处理的符号的总称.包括数值型和非数值型. 数据元素:是数据的基本单位,用于完整的描述一个对象. 数据项:是组成数据元素的,有独立含义的,不可分割的最小的单位。数据对象:是性质相同的数据元素的集合,是数据的一个子集.由大到小:数据,数据对象,数据元素,数据项.数据结构:相互之间存在一种或多种特定关系的数据元素的集合. 所谓结构,即是“原创 2016-08-01 10:52:24 · 283 阅读 · 0 评论 -
算法等基本概念
复习数据结构相关知识,使用的书是严蔚敏版的数据结构. 算法:为了解决某类问题而规定的一个有限长的操作序列.算法五个特性: 有穷性:在一定时间内完成 确定性:无二义. 可行性:执行有限次 输入:零个或多个输入 输出:一个或多个输出,无输出的算法没有意义一般来说要注意有穷性和可行性,比如死循环.评价标准: 正确性:能够得到正确结果 可读性:好算法应该首先便于人们理解和交流,其次才是机器可原创 2016-07-31 18:50:46 · 358 阅读 · 0 评论 -
郝夫曼树和郝夫曼编码
1.郝夫曼编码是一种不定长编码。 我们知道网络上电脑上的数据传输最终是一串二进制序列,也就是0,1组成的序列.比如你要传输“ABCD”这一串字符串,那么你就要对它进行编码,将它转换成二进制序列,然后再对这串二进制序列进行转码得到“ABCD”.那么显然就肯定有一个编码表。编码总的来说有两种,一种是定长编码,另一种是不定长编码.定长编码就是每个字符所占的二进制位长度是固定的,这样的话解码也容易,如果长原创 2016-09-04 22:07:18 · 822 阅读 · 0 评论