数据结构
文章平均质量分 83
数据结构内容——C语言实现
程序猿(雷霆之王)
鹏
展开
-
链表OJ题
本道题存在一个有趣的结论:让一个指针从链表起始位置开始遍历链表,同时让一个指针从判环时相遇点的位置开始绕环运行, 两个指针都是每次均走一步,最终肯定会在入口点的位置相遇。这个问题其实很容易解释,当两个指针都进环的时候,它们之间存在差距,每走一次,快指针就会比慢指针多走一步,差距也就同时减小一步,这样,迟早差距会变为0,即追上。第二,我们怎么找交点?原创 2024-08-17 16:09:50 · 320 阅读 · 0 评论 -
单链表的应用
前言前言之前我们介绍了链表的知识,本篇博客我们来看一些关于单链表的OJ算法题目,大家可以通过这些题目来加深对单链表的理解,如果你对本篇内容感兴趣,请继续往下阅读,下面进入正文部分。题目1 移除链表元素这道题有两种思路,第一种思路:我们找出链表中等于val值得节点。然后将他们删除掉;第二种思路:我们创建一个新链表,找出值不等于val的节点,然后将它们尾插到新链表中。原创 2024-08-17 16:09:32 · 608 阅读 · 2 评论 -
数据结构初阶——顺序表专题
这么做是为了我们后面方便修改代码,如果我们需要把int改为char,那么我们只需要把第一行的int改为char,这样后面的代码中的int就统一改成了char,实现了“一劳永逸”的效果。原创 2024-05-10 19:04:39 · 1365 阅读 · 2 评论 -
数据结构——单链表专题
这里大家可以看到,我们声明了一个结构体,结构体中的内容就是前面我们所说的节点的组成元素,包括节点自身存储的数据,以及指向下一个节点的指针(这是一个结构体指针),因为下一个节点依然是一个结构体。这里大家发现,头插代码是比较简单的,上来还是先断言,然后为新插入的节点申请空间,然后我们要让原本的首节点成为新节点中指向下一个位置的节点,最后再让新节点成为新的首节点,这样就完成了头插的任务。这里大家可能发现了它们之间的关系了,我们定义链表实际上就是在定义链表节点的结构,那么下面我们就要来讨论节点的定义方法了。原创 2024-07-07 13:08:38 · 1085 阅读 · 4 评论