数据结构与算法
文章平均质量分 81
本专栏专注于数据结构与算法的学习,涵盖了常见的数据结构(如数组、链表、栈、队列、树、图等)和算法(如排序、搜索、图算法、哈希表等),内容深入浅出,适合有一定编程基础的开发者阅读。
小白苦学IT
Practice the code hard, hoping to get my own offer.
展开
-
完全二叉树——堆的概念及实现
堆(heap):是堆内存的简称,堆是动态分配内存,内存大小不固定,也不会自动释放,堆——数据结构是一种无序的树状结构,同时它还满足key-value键值对的存储方式。通过本次堆的实现,加深了对堆这个结构的认识,同时了解了堆的实际应用——1.堆排序和2.TOP-K问题。原创 2023-05-24 23:17:39 · 1101 阅读 · 3 评论 -
马上五一了,带大家玩一下五子棋——C语言
花了点时间下了个“五一快乐”的五子棋,哈哈哈哈哈哈,还不太熟练,所以写的有点丑,勉强过的去就行,不知道佬们看不看得出来,还是说实在一点都不像,不过没关系,佬们阅读了之后希望可以给我修正一下,去玩玩。那个’乐‘字确实没整好,哈哈哈,看起来超别扭。因为这篇博文实在五一这天完成的,所以呢,在介绍五子棋之前,先祝各位支持小白的大佬都五一快乐!好了,我们的五子棋实现就到这了,五一快乐哦~祝福送给打架了之后就让我们来说一说正文吧。原创 2023-05-01 01:10:14 · 717 阅读 · 36 评论 -
LeetCode——链表简单题题解
真的,不说别的,咋们就是说是不是链表这块动不动就用快慢指针,把快慢指针学会并且灵活应用,解答链表题对你会有很大帮助。原创 2023-04-27 00:14:00 · 789 阅读 · 37 评论 -
数据结构与算法之手撕排序算法
为什么要学习排序算法?根据统计,早起大型机CPU资源的四分之一都花在了数据排序上面。排序算法作为最基础的算法,各种操作系统、编程语言都提供了内置的实现。既然排序实现随处可见,我们为什么还要自己动手实现呢?虽然经典算法要动手写写加深印象的道理都懂,但直到最近才发现,每种排序算法里都“暗藏玄机”。排序算法看似简单,其实不同的算法中蕴涵着经典的算法策略。通过熟练掌握排序算法,就可以掌握基本的算法设计思想,包括暴力枚举法、时间空间置换、子问题的分治以及随机化。原创 2023-04-12 00:50:57 · 636 阅读 · 45 评论 -
c语言数据结构——树形结构之树和二叉树
二叉树有什么用?二叉树应用非常广泛。在操作系统源程序中,树和森林被用来构造文件系统。我们看到的window和linux等文件管理系统都是树型结构。在编译系统中,如C编译器源代码中,二叉树的中序遍历形式被用来存放C 语言中的表达式。其次二叉树本身的应用也非常多,如哈夫曼二叉树用于JPEG编解码系统(压缩与解压缩过程)的源代码中,甚至于编写处理器的指令也可以用二叉树构成变长指令系统,另外二叉排序树被用于数据的排序和快速查找。原创 2023-04-09 23:43:57 · 1242 阅读 · 35 评论 -
C语言数据结构——线性表之栈和队列
为什么会定义栈和队列这两种数据结构呢?原因在于:之所以会定义栈和队列这样的数据结构是因为他们有两大特性他们可以保存程序运行路径中各个点的信息,以便用于回溯操作或其他需要访问已经访问过的节点信息的操作。比如: 栈用于解决迷宫问题,就是用到了若线路不通,需要回溯到已访问过的结点,从那个结点再做一次与这次路径不同的选择。先进后出 和 先进先出的 次序先进后出次序 其实就是一种将序列反序操作的次序先进先出次序 其实就是一种将序列顺序操作的次序。原创 2023-04-07 22:36:47 · 747 阅读 · 29 评论 -
c语言数据结构——链表的实现及其基本操作
顺序表的问题及思考中间/头部的插入删除,时间复杂度为O(N)增容需要申请新空间,拷贝数据,释放旧空间。会有不小的消耗。增容一般是呈2倍的增长,势必会有一定的空间浪费。例如当前容量为100,满了以后增容到200,我们再继续插入了5个数据,后面没有数据插入了,那么就浪费了95个数据空间。思考:如何解决以上问题呢?下面我们给出了链表的结构,让我们来看看吧。原创 2023-04-06 14:39:22 · 3608 阅读 · 20 评论 -
c语言数据结构——顺序表及其基本操作
本文介绍了顺序表的定义和常见操作并使用C语言代码对其进行实现。顺序表是在计算机内存中 以数组的形式保存的线性表 ,线性表的顺序存储是指用一组地址连续的存储单元 依次存储线性表中的各个元素 、使得线性表中在逻辑结构上相邻的数据元素存储在相邻的物理存储单元中,即通过数据元素物理存储的相邻关系来反映数据元素之间逻辑上的相邻关系,采用顺序存储结构的线性表通常称为顺序表。原创 2023-03-23 22:47:41 · 179 阅读 · 7 评论