当前位置: 首页 > news >正文

反转单链表

在这里插入图片描述
思路图1:
在这里插入图片描述
代码:


struct ListNode* reverseList(struct ListNode* head){if(head==NULL)//当head是空链表时
{return head;
}struct ListNode* n1=NULL;struct ListNode* n2=head;struct ListNode* n3=head->next;if(head->next==NULL)//当链表只有一个节点时{return head;}
while(n2)
{n2->next=n1;n1=n2;n2=n3;if(n3==NULL)//当最后一次n3走完后就不会再走了{n3=n3;}else{n3=n3->next;}
}
return n1;
}

思路2(头插法):定义一个新的头指针,然后把链表的节点从第一个开始分别拿下来,头插到新指针处,就实现了链表的逆序
在这里插入图片描述
代码:

struct ListNode* reverseList(struct ListNode* head){struct ListNode*cur=head;struct ListNode*newnode=NULL;while(cur){struct ListNode*per=cur->next;//保存下一个节点cur->next=newnode;newnode=cur;cur=per;//移动cur}return newnode;}
http://www.lryc.cn/news/171188.html

相关文章:

  • 加速新药问世,药企如何利用云+网的优势?
  • C++中string对象之间比较、char*之间比较
  • MVVM模式理解
  • js常用的数组处理方法
  • [Document]VectoreStoreToDocument开发
  • 【LeetCode-简单题】225. 用队列实现栈
  • 数据预处理方式合集
  • 【前端】jquery获取data-*的属性值
  • GB28181学习(五)——实时视音频点播(信令传输部分)
  • 单例模式(饿汉模式 懒汉模式)与一些特殊类设计
  • 133. 克隆图
  • 交流耐压试验目的
  • 使用 YCSB 和 PE 进行 HBase 性能压力测试
  • 正则表达式相关概念及不可见高度页面的获取
  • 深入学习 Redis - 分布式锁底层实现原理,以及实际应用
  • Hive行转列[一行拆分成多行/一列拆分成多列]
  • TypeScript系列之类型 string
  • 【C++】动态内存管理 ③ ( C++ 对象的动态创建和释放 | new 运算符 为类对象 分配内存 | delete 运算符 释放对象内存 )
  • AMS爆炸来袭,上线即巅峰
  • 是面试官放水,还是公司实在是太缺人?这都没挂,华为原来这么容易进...
  • 怒刷LeetCode的第2天(Java版)
  • AUTOSAR汽车电子嵌入式编程精讲300篇-车载CAN总线网络的异常检测(续)
  • mojo安装
  • 【探索Linux】—— 强大的命令行工具 P.8(进程地址空间)
  • vue3 - Element Plus 切换主题色及el-button hover颜色不生效的解决方法
  • 【C++面向对象侯捷】1.C++编程简介
  • 年龄大了转嵌入式有机会吗?
  • Mysql高级——索引优化和查询优化(2)
  • SpringMVC的拦截器和JSR303的使用
  • servlet中doGet方法无法读取body中的数据