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

江苏元鼎建设工程有限公司网站校园在线网站怎么做

江苏元鼎建设工程有限公司网站,校园在线网站怎么做,自己创建app,江苏金地建设工程有限公司网站回文链表判定 给你一个单链表的头节点 head #xff0c;请你判断该链表是否为回文链表。如果是#xff0c;返回 true #xff1b;否则#xff0c;返回 false 。 方法一#xff1a;栈反转对比法 解题思路#xff1a;找到中间节点后用栈辅助反转对比 解题方法#xff1…回文链表判定 给你一个单链表的头节点 head 请你判断该链表是否为回文链表。如果是返回 true 否则返回 false 。 方法一栈反转对比法 解题思路找到中间节点后用栈辅助反转对比 解题方法 找到链表的中间节点并判断奇数还是偶数 头结点到中间节点前的节点入栈偶数从中间节点开始和栈内元素进行比较 奇数从中间节点后面的节点开始和栈内元素进行比较 若比较到最后一个节点都相等该链表为回文链表栈空或比较到最后一个节点 时间复杂度O(n) 空间复杂度O(n) import java.util.List; import java.util.Stack;import javax.management.ListenerNotFoundException;/*** 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 static boolean isPalindrome(ListNode head) {/*** head - 1 - 2 - 2 - 1 - null* head - 1 - 2 - 1 - null* 找到链表的中间节点并判断奇数还是偶数* 头结点到中间节点的节点入栈偶数从中间节点开始和栈内元素进行比较* 奇数从中间节点后面的节点开始和栈内元素进行比较* 若比较到最后一个节点都相当该链表为回文链表栈空或比较到最后一个节点*/if(head null){return false;}ListNode dummy new ListNode(-1);dummy.nexthead;ListNode slowdummy;ListNode fastdummy;ListNode midNodenull;Boolean isEventtrue;while (fast.next!null){slowslow.next;if(fast.next.next!null) {fast fast.next.next;} else{fastfast.next;isEventfalse;}}midNode isEvent ? slow.next : slow;StackListNode stacknew Stack();ListNode pdummy.next;while(p!midNode){stack.push(p);pp.next;}ListNode misEvent?midNode:midNode.next;while(m!null){ListNode tmpstack.pop();if(m.val!tmp.val){return false;}mm.next;}return true;} }方法二链自反转对比法 解题思路找到中间节点后用栈辅助反转对比 解题方法 找到链表的中间节点并判断奇数还是偶数 继续利用双指针反转中间节点前的链表。 偶数从中间节点开始和反转链进行比较 奇数从中间节点后面的节点开始和反转链进行比较 若比较到最后一个节点都相等该链表为回文链表栈空或比较到最后一个节点 时间复杂度O(n) 空间复杂度O(1) public static boolean isPalindrome(ListNode head) {/*** [1,0,1]* head - 1 - 2 - 2 - 1 - null* head - 1 - 2 - 1 - null找到链表的中间节点并判断奇数还是偶数继续利用头插法反转中间节点前的链表。偶数从中间节点开始和反转链进行比较奇数从中间节点后面的节点开始和反转链进行比较若比较到最后一个节点都相等该链表为回文链表栈空或比较到最后一个节点*/if(head null){return false;}ListNode dummy new ListNode(-1);dummy.nexthead;ListNode slowdummy;ListNode fastdummy;ListNode midNodenull;Boolean isEventtrue;while (fast.next!null){slowslow.next;if(fast.next.next!null) {fast fast.next.next;} else{fastfast.next;isEventfalse;}}midNode isEvent ? slow.next : slow;ListNode p head;headnull;while (p!midNode){ListNode tmpp.next;p.nexthead;headp;ptmp;}//偶数从中间节点开始和反转链进行比较ListNode m isEvent ? midNode : midNode.next;boolean isPalindrometrue;phead;while (isPalindrome p!null){if(p.val!m.val){isPalindromefalse;}pp.next;mm.next;}// 还原链表p head;headmidNode;while (p!null){ListNode tmpp.next;p.nexthead;headp;ptmp;}return isPalindrome;}
http://www.dnsts.com.cn/news/162473.html

相关文章:

  • 常州建设局网站为什么打不开网页编辑器插件
  • 网站开发制作流程亚马逊欧洲站
  • 服务器与网站的关系大公司 wordpress
  • 天津智能网站建设费用wordpress tag 收录
  • asp网站服务器架设句容市建设工程管理处网站
  • 什么是自助网站威海美容网站建设
  • 装修网站建设微信公众号手机app
  • 深圳专业做网站开发费用自己做网站挣钱吗
  • 宿州企业网站建设大型外包软件公司有哪些
  • 企业建立网站步骤网站建立网站
  • 如果将域名指向网站网络域名侵权十大案例
  • 建设网站模板网站程序开发语言
  • 怎样做电影下载网站青岛专业餐饮网站制作
  • 怎么让百度多收录网站沈阳网站模板建站
  • 聚来宝网站建设北滘 网站建设
  • 阿里云网站建设部署与发布旅游网络推广怎么做
  • 利用大平台做网站安卓app上架费用
  • 下载站用什么cms优化网站的步骤案列
  • 那个网站教你做美食网络营销的优势是什么
  • 网站页面一般做多大wordpress黑客主题
  • 各种购物网站大全静态展示网站多少钱
  • 做网站一年的维护费用是多少ps模板素材网站
  • 专做运动品牌的网站软件开发5个过程
  • 网站专题欣赏百度搜索热度排名
  • 长沙网站推广福建省住建厅网站官网
  • 章丘网站开发如何建一个视频网站
  • 变性人做网站做免费采集电影网站犯法吗
  • 专业的网站开发团队需要哪些人学校网站怎么查询录取
  • 电子商务网站开发流程用jsp做网站的体会
  • 怎样在华为云服务器里建设网站有关大学生做兼职的网站