题解 | #反转链表#

反转链表

https://www.nowcoder.com/practice/75e878df47f24fdc9dc3e400ec6058ca

/*
struct ListNode {
	int val;
	struct ListNode *next;
	ListNode(int x) :
			val(x), next(NULL) {
	}
};*/
class Solution {
public:
    ListNode* ReverseList(ListNode* pHead) {
		ListNode* last=pHead;
		if(!pHead || !(pHead->next)){//判断是否为空链表或只有一个节点,是则返回头结点
			return pHead;
		}
		
		ListNode* curr=pHead->next;
		ListNode* end=pHead->next->next;
		pHead->next=nullptr;

		while(end){
			curr->next=last;
			last=curr;
			curr=end;
			end=end->next;
		}
		curr->next=last;
		return curr;

		
    }
};

全部评论

相关推荐

刘湘_passion:出国旅游?那就小心你的腰子咯
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务