面试题24. 反转链表
生活随笔
收集整理的這篇文章主要介紹了
面试题24. 反转链表
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
2020-03-24
1.題目描述
反轉鏈表2.題解
需要注意兩點: 1.反轉之后的鏈表的尾節點設置為NULL,即當前頭節點的next指針域; 2.對鏈表為空進行判斷;3.代碼
#include <iostream> using namespace std;// Definition for singly-linked list. struct ListNode {int val;ListNode *next;ListNode(int x) : val(x), next(NULL) {} };class Solution { public:ListNode* reverseList(ListNode* head) {ListNode* p = head,*q=p->next,*t;p->next=NULL;while (q){t=q->next;q->next=p;p=q;q=t;} return p;} };int main(){Solution s;ListNode* head=NULL, *p,*q;int i;p=(ListNode*)malloc(sizeof(ListNode));p->val=1;p->next=NULL;head=p;q=p;p=(ListNode*)malloc(sizeof(ListNode));p->val=0;q->next=p;p->next=NULL;q=p;p=(ListNode*)malloc(sizeof(ListNode));p->val=1;q->next=p;p->next=NULL;s.reverseList(head);return 0; }總結
以上是生活随笔為你收集整理的面试题24. 反转链表的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: CentOS7 systemctl to
- 下一篇: Cachegrind:缓存和分支预测分析