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

【d46】【Java】【力扣】234.回文链表

思路

判断是否是回文,需要:一个指针指向头,一个指针指向尾,两个指针一边向中间靠拢,一边判断数值是否相同

对于单链表,不方便获得pre,如果将节点放进 数组/list ,数组/list可以直接获得索引,,那么就能方便很(注意!!这是单链表需要访问pre时,常用的解决方法)

做法:

1.链表放进list中

2.设置一个指针指向头,一个指针指向尾

3.遍历size/2遍,两个指针一边判断数值是否相同,一边向中间靠拢,

代码

import java.util.ArrayList;
import java.util.Objects;public class Main {public static void main(String[] args) {}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():有序,有索引,长度可变//数组有索引,长度不可变ArrayList<Integer> list = new ArrayList<>();ListNode cur=head;while (cur != null) {list.add(cur.val);cur = cur.next;}//遍历size/2遍,,一个指针指向头,,一个指针指向尾//判断两个指针指向是否相同int size = list.size();int pre=0;int last=size-1;for (int i = 1; i <=size/2 ; i++) {//判断两个指针指向是否相同if (list.get(pre).equals(list.get(last))) {//如果相同,移动指针,继续判断pre++;last--;}else{return false;}}return true;}}
}

记录

总结

对于单链表,如果需要获得pre,可以节点放进 数组/list ,数组/list可以直接获得索引,,那么就能方便很(注意!!这是单链表需要访问pre时,常用的解决方法)

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 详解QT元对象系统用法
  • RK3568部署DOCKER启动服务器失败解决办法
  • 实用小工具——多标签页插件Office Tab介绍
  • C++ 解析 RDP 协议
  • 分布式Redis(14)哈希槽
  • 数据可视化pyecharts——数据分析(柱状图、折线图、饼图)
  • 【算法——双指针】
  • 每日一题——第九十七题
  • 【掘金量化使用技巧】用日线合成长周期k线
  • JavaScript发送邮件:实现前端触发的教程?
  • react的组件的概念和使用
  • C++——求3*3矩阵对角元素之和。
  • go语言 swagger 查询 json 字段注释
  • 教你用 python 在国内实现 openAi 的调用
  • 以小人之心度君子之腹
  • 实现windows 窗体的自己画,网上摘抄的,学习了
  • 【399天】跃迁之路——程序员高效学习方法论探索系列(实验阶段156-2018.03.11)...
  • Android 初级面试者拾遗(前台界面篇)之 Activity 和 Fragment
  • Android优雅地处理按钮重复点击
  • angular2 简述
  • Github访问慢解决办法
  • JavaScript对象详解
  • Java多态
  • JDK9: 集成 Jshell 和 Maven 项目.
  • Making An Indicator With Pure CSS
  • MQ框架的比较
  • node-glob通配符
  • spring security oauth2 password授权模式
  • vue 配置sass、scss全局变量
  • 对JS继承的一点思考
  • 复杂数据处理
  • 快速构建spring-cloud+sleuth+rabbit+ zipkin+es+kibana+grafana日志跟踪平台
  • 前端相关框架总和
  • 区块链共识机制优缺点对比都是什么
  • 如何优雅地使用 Sublime Text
  • 腾讯优测优分享 | 你是否体验过Android手机插入耳机后仍外放的尴尬?
  • 我的面试准备过程--容器(更新中)
  • 在weex里面使用chart图表
  • 如何通过报表单元格右键控制报表跳转到不同链接地址 ...
  • ​数据结构之初始二叉树(3)
  • ​业务双活的数据切换思路设计(下)
  • # Apache SeaTunnel 究竟是什么?
  • #{}和${}的区别是什么 -- java面试
  • #13 yum、编译安装与sed命令的使用
  • (1)Android开发优化---------UI优化
  • (第30天)二叉树阶段总结
  • (一)、软硬件全开源智能手表,与手机互联,标配多表盘,功能丰富(ZSWatch-Zephyr)
  • ******之网络***——物理***
  • .mp4格式的视频为何不能通过video标签在chrome浏览器中播放?
  • .NET Core/Framework 创建委托以大幅度提高反射调用的性能
  • .NET Micro Framework 4.2 beta 源码探析
  • .net 使用ajax控件后如何调用前端脚本
  • .net安装_还在用第三方安装.NET?Win10自带.NET3.5安装
  • .NET程序员迈向卓越的必由之路
  • .NET周刊【7月第4期 2024-07-28】