反转链表
// 结点1->next结点2->next结点3
// | |
// pHead temp(保存pHead的后继结点)
//变为:
// 结点1next<-结点2->next结点3
// | | |
// preNode pHead temp
//
//需要4步: 第1步:保存pHead的后继结点;
// 第2步:将结点2的后继变为结点1;
// 第3步:preNode指针后移
// 第4步:pHead指针后移
//循环以上4步,至到pHead为空即可结束循环
struct ListNode* ReverseList(struct ListNode* pHead ) {
struct ListNode* preNode = NULL;
struct ListNode* temp = NULL;
while(pHead != NULL) //至到pHead为空即可结束循环
{
temp = pHead->next; //第1步
pHead->next = preNode; //第2步
preNode = pHead; //第3步
pHead = temp; //第4步
}
return preNode; //返回最开始链表的最后一个结点
}#牛客AI配图神器#
// | |
// pHead temp(保存pHead的后继结点)
//变为:
// 结点1next<-结点2->next结点3
// | | |
// preNode pHead temp
//
//需要4步: 第1步:保存pHead的后继结点;
// 第2步:将结点2的后继变为结点1;
// 第3步:preNode指针后移
// 第4步:pHead指针后移
//循环以上4步,至到pHead为空即可结束循环
struct ListNode* ReverseList(struct ListNode* pHead ) {
struct ListNode* preNode = NULL;
struct ListNode* temp = NULL;
while(pHead != NULL) //至到pHead为空即可结束循环
{
temp = pHead->next; //第1步
pHead->next = preNode; //第2步
preNode = pHead; //第3步
pHead = temp; //第4步
}
return preNode; //返回最开始链表的最后一个结点
}#牛客AI配图神器#
全部评论
相关推荐
01-06 16:32
广东科技学院 软件测试
哞客37422655...:兄弟别慌!💪 民办本找实习确实难点,但不是没机会。100+简历才2个面试,可能简历需要优化下:
项目经历写具体点,突出测试用例、bug数量等
技能栏把测试工具/方法论写清楚
可以考虑降低预期,先进小厂积累经验
测试岗相对好进,坚持投!现在才半个月,有人投3个月才上岸的😭 加油,offer在路上了🚀 点赞 评论 收藏
分享
凡岛公司福利 528人发布