[C语言]查找链表的中间元素
来源:互联网 发布:紫菜三角梅淘宝店铺 编辑:程序博客网 时间:2024/06/06 20:58
查找链表的中间元素,最简便的方法之一,就是先遍历一遍链表,得到链表长度,再根据长度遍历得到中间的元素。我这里用的是快慢指针去查找,只需要遍历一次即可,快指针每次走两步,慢指针每次走一步,当快指针走完了,慢指针所指位置即中间元素的位置,具体实现如下
C代码实现
struct ListNode { int val; struct ListNode *next;};/*** 若链表元素为奇数个,则返回中间的元素,若链表元素为偶数个,则返回中间 元素偏左的一个 */struct ListNode* link_list_find_mid_ele(struct ListNode* head){ struct ListNode* fast, *slow; fast = head; slow = head; if(!head) return NULL; while(fast && fast->next) { fast = fast->next->next; slow = slow->next; } return slow;}
0 0
- [C语言]查找链表的中间元素
- 查找单向链表的中间元素
- 链表中间元素查找问题
- 【C语言】查找链表的中间节点及倒数第K个节点
- 查找单链表的中间节点,要求只能遍历一次链表(C语言)
- 查找单链表的中间元素
- 找出链表的中间结点 C语言实现
- 查找单链表中间元素
- 单链表查找中间元素
- 面试题三 C/C++面试秘笈 查找单链表的中间元素 --程序员面试题
- 找出链表的中间元素
- 如何找到链表的中间元素?
- 查找链表的中间节点
- 查找链表的中间节点
- 数据结构链表 -- 查找倒数第N个元素、中间元素、创建链表
- C语言—链表的查找
- C语言:【单链表】查找单链表的中间节点,要求只能遍历一次
- c语言源代码,快速排序,选取中间元素作为参照
- mpg123 把mp3文件解码到标准输出设备(stdout)
- HDU——1393Weird Clock(水题,注意题意)
- JAVA应用程序获取当前路径
- 忙些更好
- Java类中代码的加载顺序
- [C语言]查找链表的中间元素
- 各种排序算法的总结和比较
- [从头学数学] 第88节 折线统计图
- codeforces626E.Simple Skewness(三分)
- SAP外向交货单中的批次拆分应用于免费货物的小问题
- USACO 5.4 Canada Tour dp
- 初识 TextKit
- 海信智能电视如何看电视直播
- 整理github上的优秀开源项目-不定期更新