数据结构与算法
文章平均质量分 86
分享典型的数据结构,如链表,栈,堆,图等的创建与运用,以及解析一些经典的数据算法
勾栏听曲_0
CSDN“嵌入式领域新星创作者”,阿里云开发者社区“专家博主”,“星级博主”,“技术博主”。
“自我”不是突然的顿悟,而是探索、试错的结果。
展开
-
C语言/C++随机数生成,程序运行时间计时器(含高精度计时器),包括Windows环境与Linux环境
随机数生成,一秒内生成多个不通过的随机数;计算程序运行时间,程序运行时间计时。有利用srand与rand简单生成随机数,也有利用Windows与Linux独有的环境在一秒内生成多个不同的随机数。有使用clock函数的通用计算程序运行时间的方法,也有利用Windows与Linux独有的环境对程序运行时间的高精度的计时。原创 2023-04-20 20:20:41 · 3452 阅读 · 26 评论 -
动态规划算法解决背包问题,算法分析与C语言代码实现,时间效率解析
动态规划算法的深度解析,算法思路的讲解,斐波那契数列为引深度理解动态规划法。使用动态规划法解决背包问题,背包问题的问题与类型介绍,算法思路,递推式与初始条件怎么求,时间效率分析,使用C语言解决背包问题,C语言代码实现。原创 2023-04-16 21:51:55 · 2177 阅读 · 33 评论 -
分治法解二维的最近对问题,算法分析与代码实现,蛮力法与分治法解决二维的最近对问题的区别
利用分治法解决二维的最近对问题,蛮力法解决二维的最近对问题的两种方法算法分析与代码实现,以及分治法下解决二维的最近对问题的实例分析。解析分治算法的思想,分治法的流程,分治法是如何实现的,利用分治算法的主定理分析分治算法在不同情况下的时间复杂度。原创 2023-04-13 19:33:24 · 2768 阅读 · 41 评论 -
快速排序,分治法实际应用(含码源与解析)
快速排序是另一种基于分治技术的重要排序算法。本文介绍快速排序的历史,算法解析,最优时间效率分析,最差时间效率分析的主定理,快速排序的码源并带有解析。合并排序是按照元素在数组中的位置对它们进行划分,快速排序按照元素的值对它们进行划分。划分是对给定数组中的元素的重新排列,使得一个数组A[i],有s下标,A[s]左边的元素都小于等于A[s],而所有A[s]右边的元素都大于等于A[s]。原创 2023-03-25 11:49:01 · 2422 阅读 · 32 评论 -
分治法实现合并排序(归并排序),理解分治算法思想,实现分治算法的完美例子合并排序(含码源与解析)
解析分治算法的思想,分治法的流程,分治法是如何实现的,利用分治算法的主定理分析分治算法在不同情况下的时间复杂度,成功应用分治技术的一个完美例子合并算法(归并算法)的实现,有图例分析、视频演示、源代码展示。原创 2023-03-23 07:30:00 · 2901 阅读 · 30 评论 -
减治法实现插入排序,减治法实现二叉查找树(二叉搜索数,二叉排序数)的创建、插入与查找(含解析与代码实现)
解析减治法思想,利用插入排序来理解减治算法思想,有视频演示、伪代码与代码。利用减治算法实现二叉搜索数(二叉排序数,二叉查找数)的创建,添加新节点,删除节点,查找某个值在节点中的位置。原创 2023-03-17 07:30:00 · 3518 阅读 · 27 评论 -
蛮力法解决旅行商问题(穷举查找求最短路径)含解析与代码实现
用蛮力法解决旅行商问题,即穷举法求最短路径。以选择排序的实例来理解蛮力算法的思想,旅行商问题的分析,旅行商问题的代码实现。还有普通程序运行时间计时与程序运行时间高精度的计时。以及在一秒内生成一组随机数。原创 2023-03-14 20:48:54 · 4548 阅读 · 18 评论 -
深度解析带头节点单链表的增删改查与销毁链表等操作(含算法编写步骤,有完整代码)
还不会带头节点单链表的增删改查与销毁链表等操作吗,一篇带你搞定。不仅仅有算法思路带你一步步去理解,还有完整代码等你去使用(含算法编写步骤,有完整代码)原创 2022-10-24 08:41:06 · 3742 阅读 · 30 评论 -
面试技巧之带头节点单链表都有哪些例题呢,都整理在这里啦(归并两个带头结点有序链表;两个链表A B, 判断链表B是否为A的子序列;设A B两个链表为带头结点的单链表,且AB升序,求AB的交集)
设A B两个链表为带头结点的单链表,且AB升序,求AB的交集;两个链表A B, 判断链表B是否为A的子序列;归并两个带头结点有序链表的题目与题目解析,做题步骤;完整代码。原创 2022-10-23 11:20:38 · 1786 阅读 · 14 评论 -
详细解析单链表带头节点的结构体定义,普通单链表与有序单链表的创建等操作(含创建步骤与码源)
解析单链表带头节点的意义,解释什么是头节点,用代码与实例定义头节点与数据节点的结构体;创建带头节点的单链表的步骤与详细代码;创建有序带头节点单链表的步骤与码源原创 2022-10-23 10:37:59 · 2989 阅读 · 13 评论 -
如何实现动态分配,malloc,realloc,calloc的使用方法,数组,链表,结构体实现动态分配(含代码实现)
教你如何灵活使用malloc,realloc,calloc函数进行动态分配内存空间,并且分析他们的异同\区别;数组怎么动态分配内存空间,结构体怎么动态分配内存空间,链表怎么动态分配内存空间;动态分配内存空间与静态分配的优缺点,什么情况下需要使用动态分配内存空间。原创 2023-04-23 21:22:11 · 3737 阅读 · 27 评论 -
最短路径之基于贪心算法的迪杰斯特拉dijkstra算法(有图解,含码源)
贪心算法经典应用,这里有非常详细的迪杰斯特拉(dijkstra)算法的图文解析,详细分析每一个步骤,带大家做好下手写算法之前的必要准备,还有完整的代码参考;自创例题,一步一步带大家分析。原创 2022-10-19 23:21:19 · 3165 阅读 · 14 评论 -
数据结构之哈希表以及常用哈希的算法表达(含全部代码)
哈希表也叫散列表,哈希表是一种数据结构,它提供了快速的插入操作和查找操作,无论哈希表总中有多少条数据,在有足够优秀的哈希算法时,插入和查找的时间复杂度都是为O(1)。散列表 ( Hash table ),是根据键(Key)而直接访问在记忆体储存位置的数据结构。也就是说,它通过计算一个关于键值的函数,将所需查询的数据映射到表中一个位置来访问记录,这加快了查找速度。这个映射函数称做散列函数,存放记录的数组称做散列表 。表中存储的是一个地址,我们通过键值计算出来的哈希值得到这个地址,再取这个地址中的数据即可原创 2022-09-03 11:26:16 · 3049 阅读 · 0 评论 -
出现段错误的常见原因与解决方案(一步解决)
出现段错误的常见原因与具体解决方案(如何确定段错误的代码块,分析错误代码)原创 2022-08-14 16:04:25 · 9500 阅读 · 4 评论 -
大厂面试经典单链表例题(创建有序单链表,逆置单链表,判断链表是否有环,取链表中间节点)(含核心代码与解析)
大厂面试经典单链表例题(创建有序单链表,逆置单链表,判断链表是否有环,取链表中间节点)原创 2022-08-13 16:56:31 · 908 阅读 · 0 评论 -
数据结构之单链表一生的历程(创建一个线性表,动态分布空间,单链表创建的思路,单链表的增、删、改、毁)
线性表的结构与如何创建一个线性表,动态分布空间,单链表创建的思路,单链表的增、删、改、毁。原创 2022-08-10 20:03:51 · 1216 阅读 · 0 评论 -
数据结构开篇(数据的概念以及数据的结构与关系)
data数据 是对客观事物符号的表示,在计算机程序中,是指所有能输入到计算机中并且能被计算机程序处理的符号的总称。而数据结构不仅要保存数据 而且数据和数据之间的关系也要保存。原创 2022-08-09 19:45:32 · 989 阅读 · 0 评论