logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

数据结构+带头结点双向循环链表+(C语言)

针对带头的双向循环链表的基本功能展开讲解:目录1.结构体定义a.typedef int LTDataType;typedef struct ListNode{LTDataType _data;struct ListNode* _next;struct ListNode* _prev;}ListNode;

文章图片
#链表#动态规划#数据结构 +1
二叉树的中序遍历(C语言)

我们从两个方向讲解二叉树的中序遍历(递归+迭代)一.递归思想:从根节点开始向其的左孩子遍历,一直访问每个节点的左孩子,当其走到NULL时返回,返回时记录每个节点的数值,然后访问该节点的右孩子,如果为NULL直接返回上一层,如果不为NULL则重复上面的操作,直到遍历完所有的节点为止.代码如下:void BTreeInOrder(struct TreeNode* root,int* arry,int*

文章图片
#c语言#数据结构#链表 +1
栈和队列相关经典算法题总结(数据结构+C语言)

我们这里针对栈和队列的一些经典算法题做详细讲解:1.括号匹配问题.2.用队列实现栈.3.用栈实现队列.4.设计循环队列.一.详细讲解如下:1.括号匹配问题.(如下图)给定一个只包括 '(',')','{','}','[',']'的字符串 s ,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。(试题来源力扣)//判断括号是否匹配bool isVal

文章图片
#算法#数据结构#c语言 +1
链表相关经典算法题总结(C语言+数据结构)

我们针对链表中最经典的几道算法题做讲解:1.求两个链表的公共节点.2.判断链表是否有环.3.给定一个链表,判断是否有环,有返回入环的第一个节点,无返回空.(在第二题上的加强版).4.给定一个链表,每个节点包含一个额外增加的随机指针,该指针可以指向链表中的任何节点或空节点。要求返回这个链表的深度拷贝.5.对链表进行插入排序.6.在一个排序的链表中,存在重复的结点,请删除该链表中重复的结点,重复的结点

文章图片
#链表#数据结构#c语言 +1
vector的讲解及模拟实现(c++)

为了方便大家理解我们边模拟实现vector容器的常用操作,然后根据代码讲解如何使用vector的这些功能,这样的话相信可以帮助大家更好的理解vector.一.vector的介绍什么是vector以及同其他容器相比的优缺点:1.vector是表示可变大小数组的序列容器.(因此其空间存在于堆上)2.就像数组一样,vector也采用的连续存储空间来存储元素,也就是意味着可以采用下标对vector的元素进

文章图片
#c++#开发语言#后端 +2
list的讲解及模拟实现(c++)

与介绍vector时相同为了方便大家理解, 我们采用便模拟实现便讲解使用方式的方式, 展开对list容器的讲解.一.list的介绍使用时注意包含头文件: #include<list>list相关特性介绍:1.list的底层是一个带头结点的双向循环链表.2.list是可以在常数范围内在任意位置进行插入和删除的序列式容器, 并且该容器可以前后双向迭代.3.list的底层是双向链表结构, 双

文章图片
#c++#链表#数据结构 +2
vector的讲解及模拟实现(c++)

为了方便大家理解我们边模拟实现vector容器的常用操作,然后根据代码讲解如何使用vector的这些功能,这样的话相信可以帮助大家更好的理解vector.一.vector的介绍什么是vector以及同其他容器相比的优缺点:1.vector是表示可变大小数组的序列容器.(因此其空间存在于堆上)2.就像数组一样,vector也采用的连续存储空间来存储元素,也就是意味着可以采用下标对vector的元素进

文章图片
#c++#开发语言#后端 +2
c++内存管理

一.c/c++内存分布1.c/c++内存区域划分我们直接来看c/c++中的内存区域划分.2.各个区域的功能①.内核空间:操作系统内核代码的运行空间.②.栈:又叫做堆栈,非静态局部变量/函数形参/返回值/表达式中间结果/某些寄存器信息等等,栈是向下增长的.③.内存映射段: 是高效的I/O映射方式,用于装载一个共享的动态内存库,用户可以使用系统接口创建共享内存,进行进程间通信.④.堆:用于程序运行时动

文章图片
#c++#算法#linux +1
八大排序算法(C语言)

目录一.插入排序1.1直接插入排序1.2希尔排序二.选择排序2.1选择排序2.2堆排序三.交换排序3.1冒泡排序3.2快速排序四.归并排序4.1归并排序五.非比较排序5.1计数排序一.插入排序基本思想:(默认升序)从数组中的第二个元素开始,先使用一个变量保存这个元素的下标,开然后始跟前一个比较,如果比他小则交换位置继续跟前一个比较,直到找到一个位置比它的前一个元素大则停止(或走到数组开头也停止),

文章图片
#排序算法#c语言#数据结构 +1
到底了