[LeetCode]206. Reverse Linked List
206. Reverse Linked List
Reverse a singly linked list.
反转链表:
1)对于空链表或者一个节点链表无需反转,返回即可。
设计思路:
1)首先把当前节点外的剩下节点保存在next中。
2)处理当前节点,主要把当前节点的next指针指向部分反转链表list中。
3)再把加入了当前节点的的head赋值给list即可。
/***Definitionforsingly-linkedlist.*structListNode{*intval;*structListNode*next;*};*/structListNode*reverseList(structListNode*head){if(head==NULL||head->next==NULL){returnhead;}structListNode*list=NULL;structListNode*next=NULL;for(;head;head=next){next=head->next;head->next=list;list=head;}returnlist;}
设计盲区:不要老想着对新链表指向list进行处理,换位思考处理head,会节省不少代码量
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。