回文链表算法

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

示例 1:

复制代码
输入:head = [1,2,2,1]
输出:true

示例 2:

复制代码
输入:head = [1,2]
输出:false

提示:

  • 链表中节点数目在范围[1, 105]
  • 0 <= Node.val <= 9

进阶: 你能否用 O(n) 时间复杂度和 O(1) 空间复杂度解决此题?

java 复制代码
/**
 * Definition for singly-linked list.
 * public class ListNode {
 *     int val;
 *     ListNode next;
 *     ListNode() {}
 *     ListNode(int val) { this.val = val; }
 *     ListNode(int val, ListNode next) { this.val = val; this.next = next; }
 * }
 */
class Solution {
    public boolean isPalindrome(ListNode head) {
        List<Integer> list = new ArrayList<>();
        while (head != null) {
            list.add(head.val);
            head = head.next;
        }
        for (int i = 0; i < list.size()/2; i ++) {
            if (list.get(i) != list.get(list.size() - 1 - i)) {
                return false;
            }
        }
        return true;
    }
}
相关推荐
一支帆8 小时前
微信小程序-情侣点餐
java·微信小程序·情侣点餐
kkk哥8 小时前
weixin121作品集展示微信小程序
java·mysql·微信小程序·ssm·b/s架构·作品集展示微信小程序
ZHW_AI课题组8 小时前
使用DBSCAN算法对纽约市 Airbnb 房源数据集进行聚类分析
算法
码界索隆9 小时前
Python转Java系列:前言
java·开发语言·python
蓦然回首却已人去楼空9 小时前
【分词:中文分词】BPE字节级分词算法实现汉字表达!
java·算法·中文分词
3DVisionary9 小时前
aero-engine-blade-thermal-fatigue-dic-inspection
人工智能·算法·机器学习·航空发动机·高温dic·涡轮叶片·热疲劳
asdfg12589639 小时前
一文理解Java中的泛型
java·开发语言
飞翔中文网9 小时前
Java学习笔记之反射
java·笔记·学习
河阿里9 小时前
Spring Boot:整合Quartz集群部署指南
java·spring boot·后端