数据结构与算法
文章平均质量分 96
RT
Mongxin_Chan
c/c++选手,Vue框架,QT|先当学生,再当先生。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
数据结构与算法——第一讲:数据结构与算法的简单定义
这章我们讲了数据类型的定义,它是由相互之间存在一种或者多种特定关系的数据元素的集合,也讲了数据结构与算法的密切关系,如果不言算法只谈数据结构,当然是可以的,但是就跟《梁⼭伯与祝英台》不谈“祝英台”一般,我们便觉得好像少了什么。以及一些算法关于时间复杂度、空间复杂度的讨论。原创 2024-09-03 10:09:39 · 1263 阅读 · 0 评论 -
数据结构与算法——第二讲:线性表【顺序表】
我们这一章节中学习了typedef、malloc,calloc和realloc关键字,以及对于结构体struct的应用,以及最重要的就是我们学习了什么是顺序表,以及顺序表如何实现,如何通过结构体来完成对顺序表的一个初步使用,但是,不得不提的一点是,我们会利用`assert`宣言来判断指针是否为空,以及对于一个简单的顺序表的一个完成,但是我们会发现,由于数据的增多,头删、头插都会因此而变得时间复杂度更为乱,不恒定,这个时候我们就引如下一章的主题——链表,栈,以及队列。原创 2024-09-08 19:48:04 · 1259 阅读 · 0 评论 -
数据结构与算法——第三讲:单向链表
上一节中我们学习了typedefmalloccalloc和realloc关键字,以及对于结构体struct的应用,以及最重要的就是我们学习了什么是顺序表,以及顺序表如何实现,如何通过结构体来完成对顺序表的一个初步使用,但是,不得不提的一点是,我们会利用assert宣言来判断指针是否为空,以及对于一个简单的顺序表的一个完成,但是我们会发现,由于数据的增多,头删、头插都会因此而变得时间复杂度更为乱,不恒定,这个时候我们就引如这一章的主题——链表。原创 2024-09-15 09:00:00 · 1342 阅读 · 0 评论 -
数据结构与算法——第四讲:静态链表及双向链表
C/Cpp系列具有指针,使他可以非常容易地操作内存中的地址和数据,虽然如Java,C#等不使用指针,但启用了对象引用机制,某种程度上来说也间接实现了指针的某些作用。但对于一些基层的语言,如更早期的Basic、Fortran等早期高级语言,没有指针的概念,链表如果按照我们之前的说法并没有办法实现。这就是我们接下来三分之一的篇章——静态链表。它解决了在没有指针存在的情况下对静态链表的实现,为什么叫静态?原创 2024-11-02 16:00:00 · 1107 阅读 · 0 评论 -
数据结构与算法——第五讲:栈及栈的应用
这就像叠放在餐桌上的一叠餐盘,存取是只能在这叠盘顶部进行,最后放上去的盘子在最顶部,则最先使用,而最先放在桌子上的一摞餐盘(在这些盘子的顶部),则最先使用,再比如,在一条狭窄的道路上,先开进来的车发现无路可走,上无法掉头,后面上来的车又挡住了后退的路,这时要想退出去,后面的车则必须先退出去,显然最后进入这条断头路的车需要最先倒出去。原创 2024-11-02 17:30:00 · 1248 阅读 · 0 评论 -
数据结构与算法——第六讲:基本队列的实现
我们既然有了一种先进后出的数据结构,那存不存在一种数据结构类型可以出列后进后出的情况呢?答案是显然的,数据结构是为了解决生活中的抽象问题,而银行排队,早茶叫号等都是一种排队,我们把这种先进先出的数据结构类型称之为队列 队列是一种特殊的线性表,其特殊性体现在对数据元素的插入和删除操作的限定。 队列的特点是先进先出(First In First Out,FIFO),即第一个进入队列的数据元素将第一个被删除。队列的插入操作称为入队,队列的删除操作称为出队。原创 2024-11-06 10:55:11 · 1173 阅读 · 0 评论
分享