数据结构
文章平均质量分 58
小小的V
定期更新自己的C语言和数据结构的学习笔记,希望和大家一起成长
展开
-
数据结构:树与二叉树Part1:基本概念,树的转换(C语言实现)
树,顾名思义,形状就是一个树的样子,有很多分叉,自我感觉是一个有多个分叉的链表。树的结构以及基本概念还是比较复杂,不像前面的数据结构,所以wo请大家耐心看完基础概念。原创 2024-02-21 12:03:37 · 1138 阅读 · 2 评论 -
数据结构:队列(C语言实现)&一些个人总结
今天终于是把队列的基本操作学完了,队列和栈其实大同小异,队列遵循的是先进先出原则,而栈遵循的是先进后出原则,形象的来说,栈是一个杯子,而队列是一个水管,谁先进队自然就会先流出来。原创 2024-02-19 17:00:46 · 2057 阅读 · 1 评论 -
数据结构:栈(C语言实现)
int data;//我这里以整型变量作为整个栈的元素类型//这是指向下一个节点的指针//这是整个站的头结点,也是栈顶,命名为top更好理解一些int size;//栈的大小}stack;原创 2024-02-16 11:41:30 · 566 阅读 · 1 评论 -
数据结构:链表(小操作,销毁,查找,修改,C语言实现)新春快乐!!
正值新春佳节,在此祝大家新春快乐,龙行龘龘,万事顺意~~~所以让我看看是谁大年初一还在卷数据结构捏~~最后给链表收个尾,这些小操作好像不是那么难了,所以就不做图了,直接上代码首先是查找,分根据节点里面的值进行查找和根据下表进行查找,都是返回节点。原创 2024-02-10 10:25:46 · 476 阅读 · 1 评论 -
数据结构:链表(删除,C语言实现)
这里的current相当于是要被删除的节点的前驱的地址,current->next相当于是待删除节点的地址,current->next->next相当于是待删除节点的后继的地址,我们要做的首先是把待删除节点(也就是NODE index)的内存给释放掉,然后把之前已经存储在next变量中的current->next->next赋值给current->next,也就是把前驱和后继连接起来,这样就好了。注意,由于要释放内存,因此要先把后继的地址current->next->next存储到新的变量里面再进行操作。原创 2024-02-08 18:29:31 · 557 阅读 · 0 评论 -
数据结构:链表(创建与初始化,C语言实现)
链表是顺序表的升级版,它的存储空间是不连续,因此在进行删除,插入操作的时候,不需要像顺序表一样把后面的所有元素进行前移覆盖,因此更加方便,下面我们首先用代码来创建一个链表。一个结构体的节点由它存储的内容以及一个指向下一个结点的指针组成,可以把整个链表理解为一个打了很多结的绳子,一个节点由一个绳结和两段绳结之间的绳子组成,绳结就是数据域,即存储的数据内容,中间的绳子就是指针,连接两个不同的节点。原创 2024-02-05 21:37:25 · 856 阅读 · 0 评论 -
数据结构:链表(插入)
这样我们就完整地完成了一次元素插入,这是对于0而言,那么对于其他元素而言,我们需要做只是先去创建一个操作指针current作为现在到达的节点的位置(为什么不直接用head作为操作指针呢,因为这是链表,内存是不连续的,head指针的加与减不能够到达后面节点的地址),采用类似递归的方式,current=current->next,从而实现不断把current指针前移的目标,剩下与0的情况类似。不能先改动head指针。对于插入一个元素的操作,我们得先指定相应的下标index,它的位置如下。原创 2024-02-07 22:26:53 · 542 阅读 · 1 评论