题解 | #反转链表#

反转链表

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

/*
struct ListNode {
	int val;
	struct ListNode *next;
	ListNode(int x) :
			val(x), next(NULL) {
	}
};*/
#include <iterator>
#include <list>
#include <stack>
class Solution {
public:
    ListNode* ReverseList(ListNode* pHead) {
		//**************************************************
		stack<ListNode*> s;
		while(pHead){
			s.push(pHead);
			pHead = pHead->next;
		}
		if(s.empty()) return NULL;
		ListNode* node = s.top();
		s.pop();
		ListNode* dummy = node;
		while(!s.empty()){
			ListNode* temp = s.top();
			s.pop();
			node->next = temp;
			node = node->next;
		}
		node->next=NULL;
		return dummy;
    }
};

全部评论

相关推荐

黑皮白袜臭脚体育生:简历统一按使用了什么技术实现了什么功能解决了什么问题或提升了什么性能指标来写会更好
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务