博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
206. Reverse Linked List
阅读量:6827 次
发布时间:2019-06-26

本文共 867 字,大约阅读时间需要 2 分钟。

  • Total Accepted: 191329
  • Total Submissions: 435675
  • Difficulty: Easy
  • Contributors: Admin

Reverse a singly linked list.

Hint:

A linked list can be reversed either iteratively or recursively. Could you implement both?

来源: 

分析


递归版本:
reverseList返回反续后的新头节点
1
2
3
4
5
6
7
8
9
10
11
class 
Solution {
public
:
    
ListNode* reverseList(ListNode* head) {
        
if
(head == NULL || head->next == NULL) 
return 
head;
         
        
ListNode* nhead = reverseList(head->next);
        
head->next->next = head;
        
head->next = NULL;
        
return 
nhead;
    
}
};
非递归版本
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
class 
Solution {
public
:
    
ListNode* reverseList(ListNode* head) {
        
ListNode* dummy = NULL;
        
ListNode* pre = dummy;
        
ListNode* cur = head;
        
ListNode* next;
        
while
(cur != NULL){
            
next = cur->next;
            
cur->next = pre;
            
pre = cur;
            
cur = next;
        
}
        
return 
pre;
    
}
};

转载于:https://www.cnblogs.com/zhxshseu/p/9de9fd64f397e1575a83336d072f8783.html

你可能感兴趣的文章
推送本地仓库至 GitHub
查看>>
Git 命令小结
查看>>
JavaScript 中的操作符
查看>>
js事件类型中的异类一焦点事件
查看>>
iOS性能优化 - APP启动时间优化
查看>>
MediaCodec 高效解码得到标准 YUV420P 格式帧
查看>>
还欠自己一整套LeetCode 算法题
查看>>
HTML5的特性与发展趋势
查看>>
[NGX]Angular组件/指令生命周期简介
查看>>
剑指offer刷题指南
查看>>
详解 MySql InnoDB 中的三种行锁(记录锁、间隙锁与临键锁)
查看>>
《2018双11医美城市消费榜单》:医美将在二三线城市大爆发
查看>>
正在经历寒冬的无印良品,春天在哪里?
查看>>
Scrapy框架的使用之Scrapyrt的使用
查看>>
OkHttpClient 源码分析 2(基于3.9.0的源码)
查看>>
如何写一个无配置格式统一的日志
查看>>
tsconfig.json整理记录
查看>>
adb通信协议分析以及实现(四):adb shell 命令分析
查看>>
日常工作中,个人总结的 - Git - 常用操作方法 (一)
查看>>
面试中被面试官问到的问题答案(一)
查看>>