234. 回文链表 --力扣 --JAVA

题目

给你一个单链表的头节点 head ,请你判断该链表是否为回文链表。如果是,返回 true ;否则,返回 false

解题思路

  1. 判断链表是否为回文链表取决于链表中各个节点的值,所以可以通过存储各节点的值进行对比判断;
  2. 链表的长度在遍历之前是无法获取的,所以使用list比链表相对好一点;
  3. 回文链表是对称链表;

代码展示

java 复制代码
class Solution {
    public boolean isPalindrome(ListNode head) {
        List<Integer> data = new ArrayList<>();
        while (head != null){
            data.add(head.val);
            head = head.next;
        }
        for (int i = 0; i < data.size() / 2; i++){
            if(!Objects.equals(data.get(i), data.get(data.size() - 1 - i))){
                return false;
            }
        }
        return true;
    }
}
相关推荐
嘿黑嘿呦40 分钟前
数据结构-图论-最短路径
数据结构·图论
ʚ希希ɞ ྀ41 分钟前
岛屿数量 -- 图论
算法·深度优先·图论
aWty_2 小时前
实分析入门(11)--Cantor三分集
学习·数学·算法·实变函数
兰令水2 小时前
leecodecode【二叉树递归+对称】【2026.6.1打卡-java版本】
算法
地平线开发者10 小时前
profiler debug 工具用法与高一致性策略
算法·自动驾驶
编程大师哥10 小时前
匿名函数 lambda + 高阶函数
java·python·算法
我叫袁小陌10 小时前
算法解题思路指南
算法
地平线开发者10 小时前
Conv+BN+Add+ReLU 融合机制简介
算法·自动驾驶
也曾看到过繁星11 小时前
数据结构---顺序表
数据结构