请判断一个链表是否为回文链表。

示例 1:

输入: 1->2
输出: false
示例 2:

输入: 1->2->2->1
输出: true

代码

/*** Definition for singly-linked list.* public class ListNode {*     int val;*     ListNode next;*     ListNode(int x) { val = x; }* }*/
class Solution {public boolean isPalindrome(ListNode head) {if(head==null||head.next==null) return true;ListNode fast=head,slow=head,pre=null;while (fast!=null&&fast.next!=null){pre=slow;slow=slow.next;fast=fast.next.next;}//快慢指针找出中点pre.next=null;//从中点切断链表pre=null;while (slow!=null)//倒置后部分链表{ListNode temp=slow.next;slow.next=pre;pre=slow;slow=temp;}while (pre!=null&&head!=null)//将两个链表比较{if(pre.val!=head.val) return false;pre=pre.next;head=head.next;}return true;}
}

leetcode 234. 回文链表(快慢指针+链表倒置)相关推荐

  1. LeetCode 234. 回文链表(快慢指针+链表反转)

    1. 题目 请判断一个链表是否为回文链表. 示例 1: 输入: 1->2 输出: false示例 2: 输入: 1->2->2->1 输出: true进阶: 你能否用 O(n) ...

  2. 34. Leetcode 234. 回文链表 (链表-双指针)

    给你一个单链表的头节点 head ,请你判断该链表是否为回文链表.如果是,返回 true :否则,返回 false .示例 1:输入:head = [1,2,2,1] 输出:true 示例 2:输入: ...

  3. leetcode - 234. 回文链表

    请判断一个链表是否为回文链表. 示例 1: 输入: 1->2 输出: false 示例2: 输入: 1->2->2->1 输出: true 进阶: 你能否用 O(n) 时间复杂 ...

  4. Leetcode 234. 回文链表 解题思路及C++实现

    解题思路: 先用快慢指针找到链表的中间节点,然后将链表一分为二: 然后将后半部分链表进行翻转,用到三个指针: 接着分别遍历两个链表,逐个比较 val 值,如果出现不相等,就返回 false. /*** ...

  5. Leetcode 234 回文链表 (每日一题 20210730)

    请判断一个链表是否为回文链表.示例 1:输入: 1->2 输出: false 示例 2:输入: 1->2->2->1 输出: true题目地址:https://leetcode ...

  6. LeetCode 234 回文链表

    原题链接 解题思路:使用vector来存储链表,然后来检查其中每一个元素,是否组成回文 /*** Definition for singly-linked list.* struct ListNode ...

  7. 【LeetCode】【HOT】234. 回文链表(存入数组)

    [LeetCode][HOT]234. 回文链表 文章目录 [LeetCode][HOT]234. 回文链表 package hot;import java.util.ArrayList; impor ...

  8. LeedCode篇:234. 回文链表

    234. 回文链表 题目: 解题思路: 源码: 踩坑点: 题目: 解题思路: 1.先用快慢指针找到中间节点 2.后半个链表逆置 3.然后一一比较 源码: bool isPalindrome(struc ...

  9. [234] 回文链表

    [234] 回文链表 //请判断一个链表是否为回文链表. // // 示例 1: // // 输入: 1->2 //输出: false // // 示例 2: // // 输入: 1->2 ...

最新文章

  1. 简单的Windows资源管理器——Java版本
  2. shell输出加颜色
  3. wxWidgets:wxGridEditorCreatedEvent类用法
  4. 阶乘取模算法java_np问题(大数阶乘取模)
  5. 用VC写Assembly代码(5) --循环的使用(一)
  6. pps服务器未响应_pps服务器未响应停止播放怎么解决
  7. 如何使用IBM SPSS Statistics进行描述性分析
  8. 怎样杀计算机病毒,如何彻底查杀计算机病毒
  9. HDOJ-----5773The All-purpose Zero(LIS)
  10. 如何写好一个数据分析报告,需要注意哪些?
  11. Eagle电路板绘制
  12. 安卓古筝软件_超详细自学软件测评|小提琴/吉他/电子琴/尤克里里/电子鼓
  13. 为啥说外包公司不能去?
  14. 2022“杭电杯”中国大学生算法设计超级联赛(1)1003 Backpack个人题解
  15. 接缝雕刻算法:一种看似不可能的图像大小调整方法
  16. DPDK官方例程分析(4)-flow_classify
  17. 控温/恒温烙铁操作方法及使用说明
  18. 【Unity】入门学习笔记180604——游戏动画设计(1)——概述/精灵对象动画
  19. matlab 变成圆形坐标,求圆和椭圆上任意角度的点的坐标
  20. 企业微信开发实战(一、相关说明及注册企业微信)

热门文章

  1. linux交叉编译时报错:file not recognized: File format not recognized
  2. 【FPGA Verilog】实验二:key按键基础实验
  3. 数据库设计的核心原则 外键的设计 提高插入数据速度
  4. 【汇编语言】8086、x86-32和C语言【赋值语句 和 数组】的对比学习(王爽学习笔记:5.8段前缀的使用)
  5. idea中HTML可以打debug吗,Intellij IDEA中使用Debug调试
  6. JavaScript知识笔记(一)——入门、语句、注释、变量、函数、输出内容、对话框、窗口
  7. 面向对象程序设计——UML分析和本学期总结
  8. 洛谷 P2919 [USACO08NOV]守护农场Guarding the Farm
  9. 请求WebApi的几种方式
  10. apache+tomcat配置