![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
文章平均质量分 90
zhoujian970
天行健,君子以自强不息;地势坤,君子以厚德载物
展开
-
数据结构学习笔记——树
二叉树(Binary Tree)是n(n>=0)个结点的有限集合,该集合或者为空集(称为空二叉树),或者由一个根结点和两棵互不相交的、分别称为根结点的左子树和右子树的二叉树组成。我们先把这棵二叉树简化成叶子结点带权的二叉树,如图6.26所示.其中A表示不及格、B表示及格、C表示中等、D表示良好、E表示优秀。每个叶子的分支线上的数字就是刚才我们提到的五级分制的成绩所占比例数。赫夫曼大叔说,从树中一个结点到另一个结点之间的分支构成两个结点之间的路径,路径上的分支数目称做路径长度。原创 2023-05-29 16:50:22 · 406 阅读 · 0 评论 -
数据结构学习笔记——字符串
串(string)是由零个或多个字符组成的有限序列,又名叫字符串。一般记为 s= “a1a2a3…an”(n >= 0)。串中的字符数目n称为串的长度,零个字符的串称为空串(null string)。空格串,只包含空格的串。注意它与空串的区别,空格串是有内容有长度的,而且可以不止一个空格。子串和主串,串中任意个数的连续字符组成的子序列称为该串的子串,相应地,包含子串的串称为主串。子串在主串中的位置就是子串的第一个字符在主串的序号。原创 2023-05-15 10:21:50 · 744 阅读 · 0 评论 -
数据结构学习笔记——栈和队列
栈(stack)是限定仅在表尾进行插入和删除操作的线性表。我们把允许插入和删除的一端称为栈顶(top),另一端称为栈底(bottom),不含任何数据元素的栈称为空栈。栈又称为后进先出(Last In First Out)的线性表,简称LIFO结构。栈的插入操作,叫作进栈,也称压栈、入栈。栈的删除操作,叫作出栈,也称弹栈。在高级语言中,调用自己和其他函数并没有本质的不同。我们把一个一个直接调用自己或通过一系列的调用语句间接第调用自己的函数,称作递归函数。原创 2023-04-28 14:57:17 · 763 阅读 · 0 评论 -
数据结构学习笔记——线性表
线性表(List):零个或多个数据元素的有限序列。数学定义:若将线性表记为(a1,…,ai-1,ai,ai+1,…,an),则表中ai-1领先与ai,ai领先于ai+1,称ai-1是ai的直接前驱元素,ai+1是ai的直接后继元素。当i=1,2,…,n-1时,ai有且仅有一个直接后继,当i=2,3,…,n时,ai有且仅有有一个直接前驱。(如图3.1.1所示)所以线性表元素的个数n(n≥0n \geq 0n≥0)定义为线性表的长度,当n = 0 时,称为空表。原创 2023-04-15 17:39:07 · 208 阅读 · 0 评论 -
数据结构学习笔记——绪论
作为一个菜鸟,这些概念是枯燥无味的。在每本书的开头,都会有这么一篇绪论,食之无味。但学习一门新的东西,总要走这一步。原创 2023-04-06 16:03:47 · 75 阅读 · 0 评论 -
数据结构学习笔记——算法
在进行算法分析时,语句总的执行次数T(n)是关于问题规模n的函数,进而分析T(n)随n的变化情况并确定T(n)的数量级。算法的时间复杂度,也就是算法的时间量度。记作T(n) = O(f(n))。它表示随问题规模n的增大,算法执行时间的增长率和f(n)的增长率相同,称作算法的渐近时间复杂度,简称时间复杂度。其中f(n)是问题规模n的过个函数。本次认识到了许多基本概念,求导时间复杂度大O并不难,难的是对数列的一些相关运算,更多是数学知识和能力。果然,书到用时方恨少。原创 2023-04-07 23:50:35 · 71 阅读 · 0 评论