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

链表算法之【回文链表】

目录

LeetCode-234题


LeetCode-234题

给定一个单链表的头节点head,判断该链表是否为回文链表,是返回true,否则返回false

class Solution {/*** 这里的解题思路为:* (1)、找中间节点* (2)、反转链表* (3)、遍历比较节点值是否相等*/public boolean isPalindrome(ListNode head) {//checkif (head == null)return false;if (head.next == null)return true;//找中间节点(while结束后slow指针指向中间节点)ListNode slow = head;ListNode fast = head;while (fast != null && fast.next != null) {slow = slow.next;fast = fast.next.next;}//反转(从slow开始的节点进行反转)ListNode reserve = null;ListNode p = slow;while (p != null) {ListNode tmp = p.next;p.next = reserve;reserve = p;p = tmp;}//比较是否回文(逐个比较节点值是否相同)while (head != null && reserve != null) {if (head.val != reserve.val)return false;head = head.next;reserve = reserve.next;}return true;}private static class ListNode {int val;ListNode next;public ListNode() {}public ListNode(int val) {this.val = val;}public ListNode(int val, ListNode next) {this.val = val;this.next = next;}}
}

http://www.dtcms.com/a/280270.html

相关文章:

  • 药品挂网价、药品集采价格、药品上市价格一键查询!
  • 多租户SaaS系统中设计安全便捷的跨租户流程共享
  • PubSub is not defined
  • PyCharm 高效入门指南:从安装到效率倍增
  • Spark Expression codegen
  • 用TensorFlow进行逻辑回归(六)
  • Spark 之 Join BoundCondition
  • windows内核研究(进程与线程-KPCR)
  • C++题解(37) 信息学奥赛一本通1318:【例5.3】自然数的拆分
  • 【GEOS-Chem模型第一期】模型概述及网页总结
  • 网络基础10--ACL与包过滤
  • C++11:constexpr 编译期性质
  • MySQL 备份与恢复指南
  • 【PTA数据结构 | C语言版】二叉树层序序列化
  • 【UV环境】使用uv快速创建环境
  • RocketMq 启动_源码分析
  • java 在k8s中的部署流程
  • LeetCode--46.全排列
  • 机器人位姿变换的坐标系相对性:左乘法则与右乘法则解析​
  • Kafka与Flink打造流式数据采集方案:以二手房信息为例
  • 如何把手机ip地址切换到外省
  • 【机器人】REGNav 具身导航 | 跨房间引导 | 图像目标导航 AAAI 2025
  • 用TensorFlow进行逻辑回归(五)
  • 从0开始学习R语言--Day47--Nomogram
  • dockerfile 最佳实践
  • 微信小程序开发-桌面端和移动端UI表现不一致问题记录
  • Linux-【单体架构/分布式架构】
  • Web3 学习路线与面试经验
  • 免杀学习篇(1)—— 工具使用
  • 【origin画图】让非等距数值等距显示