【面试题】实现单链表的逆序
来源:互联网 发布:怎么联系网络推手 编辑:程序博客网 时间:2024/05/20 06:27
思路:
1.找到头结点
2.依次遍历每个结点,并且每次都插到第一个结点之后
3.头结点.next = NULL;称为尾节点
循环方式代码实现:
List func(List head){ if(!head) //如果为空链表,无须操作 { return head; } List pre = head; //把头结点给了pre List cur = pre.next; List tmp; //定义一个结点以便循环幅值使用 pre.next = NULL; //将首结点的next置空,循环结束后,成为尾结点 while(NULL != cur) //一直循环,直到遇见尾结点 { //以下三条代码,将当前结点插到头结点之前 tmp = cur; tmp.next = pre; pre = tem; cur = cur.next; //遍历每个结点 } return pre; //返回头结点}
如有错误请大家提出,明天写递归方式的实现。
递归算法的实现:
List *func(List *oldList,List *newHead = NULL){ List *next = oldList->next; oldList->next = newHead; newHead = oldList; return (next == NULL)?newHead:func(t,newHead);}
0 0
- 【面试题】实现单链表的逆序
- 面试题-单链表的逆序
- 实现一句英文的逆序输出----微软面试题
- 面试题:用一个临时变量实现单链表逆序
- 今天的一道整数逆序面试题
- java面试题的字符串逆序输出
- 经典面试题之逆序打印单链表
- 面试题5_逆序输出单链表
- 面试题 - 字符串逆序
- 字符串面试题:字符串逆序
- 链表逆序面试题
- 面试题2--字符串逆序
- 字符串逆序等面试题
- 数列的逆序数对微软面试题
- 面试题 对所有的连续字符串进行逆序处理
- 面试题 求DNA序列的逆序度
- 《剑指Offer》面试题:数组中的逆序对的总数
- 基于visual Studio2013解决面试题之0504单链表逆序
- 排序算法比较
- 1217 借教室 2012年NOIP全国联赛提高组[迷之不能自拔]
- 归并排序 迭代版
- Android 自定义View(二)
- 图片的像素操作、添加文本
- 【面试题】实现单链表的逆序
- (二十一)java多线程之Executors
- spring拦截器&过滤器&springjdbc&mybatis
- 【PAT甲级】1061. Dating (20)
- GDOI2017模拟11.3 总结
- Android产品研发(十二)-->App长连接实现
- LinearLayout和RelativeLayout绘制过程的对比
- 二级缓存和QBC查询
- 开源许可证GPL、BSD、MIT、Mozilla、Apache和LGPL的区别