206. Reverse Linked List
2016-06-25 21:33
288 查看
Reverse a singly linked list.
Hint:
A linked list can be reversed either iteratively or recursively. Could you implement both?
反转链表
模板了
public ListNode reverseList(ListNode head)
{
if(head==null)
return head;
ListNode prev=head;
ListNode p=head.next;
ListNode pnext=null;
while(p!=null)
{
pnext=p.next;
p.next=prev;
prev=p;
p=pnext;
}
head.next=null;
return prev;
}
再贴一个递归版本
public ListNode reverseList(ListNode head) {
if(head==null || head.next==null)
return head;
ListNode nextNode=head.next;
ListNode newHead=reverseList(nextNode);
nextNode.next=head;
head.next=null;
return newHead;
}
Hint:
A linked list can be reversed either iteratively or recursively. Could you implement both?
反转链表
模板了
public ListNode reverseList(ListNode head)
{
if(head==null)
return head;
ListNode prev=head;
ListNode p=head.next;
ListNode pnext=null;
while(p!=null)
{
pnext=p.next;
p.next=prev;
prev=p;
p=pnext;
}
head.next=null;
return prev;
}
再贴一个递归版本
public ListNode reverseList(ListNode head) {
if(head==null || head.next==null)
return head;
ListNode nextNode=head.next;
ListNode newHead=reverseList(nextNode);
nextNode.next=head;
head.next=null;
return newHead;
}
相关文章推荐
- 第130课: Spark Streaming源码经典解读系列之五:Receiver工作内幕源码解密
- CentOS安装scp命令的软件包openssh-clients
- 第一次打字比赛后的感想
- 关于引用
- java连接sqlserver2008各种坑的解决参考方法
- 删除百度云右键菜单
- python中HTMLParser简单理解
- java 容器的选择
- 观察者模式(Observer)
- SQL优化
- Spring框架的validator验证器的实现
- java基础(四)二维数组/
- Visual Studio配色方案
- Redmine插件
- 关于Android的.so文件你所需要知道的
- 205. Isomorphic Strings
- JavaScript-学会进行错误处理
- 第一次盲打体验
- Eclipse插件安装方式及使用说明
- Java程序执行过程