内容概述
8道经典的链表常考题目
- 例1-a:链表逆序(easy)
- 例1-b:链表逆序2(medium)
- 例2:链表求交点(easy)
- 例3:链表求环(medium)
- 例4:链表划分(medium)
- 例5:复杂链表的复制(hard)
- 例6-a:2个排序链表归并(easy)
- 例6-b:K个排序链表归并
详细讲解题目多种解题方法、代码实现
- 一些学习与找工作的建议
8道经典的链表常考题目
例1-a:链表逆序(easy)
已知链表头节点指针head,将链表逆序。(不可申请额外空间)
选自 LeetCode 206. Reverse Linked List这里是题目来源难度:Easy
struct ListNode {
int val;//数据域
ListNode *next;//指针域
ListNode(int x) : val(x), next(NULL) {}//构造函数
};
class Solution {
public:
ListNode* reverseList(ListNode* head) {
ListNode *new_head = NULL;
while (head) {
ListNode* next = head->next;
head->next = new_head;
new_head = head;
head = next;
}
}
};