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

网站开发与凡科网站教程

网站开发与,凡科网站教程,组织建设包括哪些内容,一键免费创建论坛网站一、题目 定义一个函数&#xff0c;输入一个链表的头节点&#xff0c;反转该链表并输出反转后链表的头节点。 二、示例 示例: 【输入】 1->2->3->4->5->NULL 【输出】 5->4->3->2->1->NULL 限制&#xff1a; 0 < 节点个数 < 5000 三、…

一、题目

定义一个函数,输入一个链表的头节点,反转该链表并输出反转后链表的头节点。

二、示例

示例:

【输入】 1->2->3->4->5->NULL
【输出】 5->4->3->2->1->NULL

限制:

  • 0 <= 节点个数 <= 5000

三、解题思路

本题给出的数据结构是单向链表,那么链表中的每个节点ListNode只有2个变量,即:

int val】表示当前节点存储的值。
ListNode next】表示当前节点的后置节点的引用。

那么既然是单向链表,我们遍历链表中所有结点的时候,就只能通过调用ListNode.next的方式逐一向后遍历节点,遍历方式当然不是问题的难点,难点是如何进行翻转呢?

其实针对翻转的操作,我们只会涉及到相邻的两个节点,即:当前节点它的next节点;那么,我们需要去做如下两个操作,就可以完成翻转了:

操作1】当发现遍历到某个node节点是,其next等于null,则说明遍历到了链表的尾部,那么该节点就是翻转后的头节点,也就是本题所要获得的结果节点。
操作2】在递归遍历操作之后,执行head.next.next = head;将当前节点head的下一个节点next的后置指针指向head,这样就实现了反转;但是,此处需要注意的是,我们还需要将head.next设置为null,因为这个对于原链表的头节点很重要(因为它变为了新链表的尾节点,其next指针应该被设置为null)

解题思路说完了,我们举例,尝试将Node(1)——>Node(2)——>Node(3)——>Node(4)——>Node(5)这个链表执行翻转操作。具体操作如下图所示:

四、代码实现

class Solution {public ListNode reverseList(ListNode head) {if (head == null || head.next == null) return head; // 凤尾变龙头ListNode result = reverseList(head.next);head.next.next = head; // 翻转链表head.next = null;return result;}
}

 今天的文章内容就这些了:

写作不易,笔者几个小时甚至数天完成的一篇文章,只愿换来您几秒钟的 点赞 & 分享 。

更多技术干货,欢迎大家关注公众号“爪哇缪斯” ~ \(^o^)/ ~ 「干货分享,每天更新」

http://www.yayakq.cn/news/152601/

相关文章:

  • 免费的制作网站程序百度app安装
  • 公司做网站郯城做网站
  • 金融网站开发的意义 论文圣弓 网站建设
  • 给小说网站做编辑如何做手机网页
  • 网站建设和网络推广方案做一直播网站要多少钱
  • 2019建一个什么网站最好seo网络营销课程运营
  • php做网站需要后台吗网站优化软件推荐
  • 四川省工程信息网资深seo顾问
  • wordpress多站点配置教程wordpress 企业网站
  • 怎么做网站建设赚钱网站备案背景
  • 知名网站建设定制wordpress 下载数据表插件
  • 如何看网站是不是织梦做的天猫代运营电商公司排行榜
  • 公司 网站制作学习做网页的网站
  • 如何快速学成网站开发营销型网站可以吗
  • ae做动画教程网站做企业网站建设的公司
  • 青岛做网站服务商东莞横沥做网站
  • 做动漫图片的网站网站怎么制作视频
  • 网站建设需要哪些准备wordpress 51
  • 做网站先做ue网站设计的国际专业流程
  • 电子商务网站建设计划WordPress音乐免刷新
  • 蚌埠网站开发为什么不用h5做网站
  • 付费抽奖网站怎么做wordpress文章自动中文
  • 企业网站首页布局设计wordpress时间格式
  • 学习建网站本网站维护升级
  • 做网页去哪些网站找素材较好软件定制开发app
  • 做网站和做软件哪个有发展合肥网站建设公司 招聘
  • 外贸商城网站开发书定制网站建设程序流程
  • dw内部网站链接怎么做ui设计师的薪资水平
  • 冕宁住房和建设局网站珠海新盈科技 网站建设
  • 深圳市手机网站建设品牌做网站工资高么