找到单项链表中间那个元素,如果有两个则取前面一个
2015-07-26 22:08
381 查看
单链表节点的数据结构:
typedef struct _node
{
int element;
_node * next;
}Node;
//p为指向单链表的第一个节点
Node * FindMiddleElement(Node * &p)
{
Node * head = p;
int n = 0;
while (head != NULL) //统计节点个数
{
n++;
head = head->next;
}
head = p;
if (1 == n % 2 ) //如果奇数个节点返回指向中间节点的指针
{
return (head + n / 2);
}
else //如果偶数个节点返回指向中间两个节点中的前一个的指针
{
return (head + n / 2 - 1);
}
}
typedef struct _node
{
int element;
_node * next;
}Node;
//p为指向单链表的第一个节点
Node * FindMiddleElement(Node * &p)
{
Node * head = p;
int n = 0;
while (head != NULL) //统计节点个数
{
n++;
head = head->next;
}
head = p;
if (1 == n % 2 ) //如果奇数个节点返回指向中间节点的指针
{
return (head + n / 2);
}
else //如果偶数个节点返回指向中间两个节点中的前一个的指针
{
return (head + n / 2 - 1);
}
}
相关文章推荐
- 黑马程序员----基础题----我的基础题
- js 动态生成html 触发事件传参字符转义
- 1.6-配置IP地址
- 修复SharePoint 2013 Search 拓扑错误
- TypeScript自定义函数
- 我的C++笔记(数据的共享与保护)
- “error LNK2019: 无法解析的外部符号”之分析
- 【百度贴吧】一键回复插件发布!
- Office2010每次打开都出现配置进度窗体
- hihocoder1302 最长回文子串
- Android Using Volley
- HDU 4268 Alice and Bob(贪心+Multiset的应用)
- 探索 SharePoint 2013 Search功能
- Javascript之base.js原型那些事儿
- 朴素贝叶斯
- [LeetCode]Convert Sorted List to Binary Search Tree
- HDU 5234 Happy birthday 最多蛋糕
- Android 开源框架Universal-Image-Loader完全解析(三)---源代码解读
- 配置SharePoint 2013 Search 拓扑结构
- CDOJ 490 UESTC 490 Swap Game(思路,逆序对)