题解 | #反转链表#

/*
struct ListNode {
	int val;
	struct ListNode *next;
	ListNode(int x) :
			val(x), next(NULL) {
	}
};*/
class Solution {
public:
    ListNode* ReverseList(ListNode* pHead) {
		ListNode *pre=nullptr;//空指针保存之前的数
		ListNode *tmp=pHead;//暂时变量保存当前的值
		ListNode *next_tmp=nullptr;//保存下一个数
		//不为空的时候执行这个
		while(tmp)
		{
			next_tmp=tmp->next;//next_tmp赋值成当前数字的下一个数
			tmp->next=pre;//下一个数字的位置变成pre了,pre=phead
			pre=tmp;//pre=当前的数
			tmp=next_tmp;//phead这个位置的数字变成tmp—next的了。
		}
		return pre;//返回空

    }
};

全部评论
翻转链表用在什么情景呀?
点赞 回复
分享
发布于 2023-05-10 10:09 安徽
宝子有应用例题参考吗?
点赞 回复
分享
发布于 2023-05-10 10:54 重庆
滴滴
校招火热招聘中
官网直投

相关推荐

1 1 评论
分享
牛客网
牛客企业服务