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

怎么让谷歌收录我的网站网站建设河南公司

怎么让谷歌收录我的网站,网站建设河南公司,郑州最近新闻事件,备份wordpress配置判定链表是否是回文串 判定链表是否是回文串 题目 对于一个链表,请设计一个时间复杂度为O(n),额外空间复杂度为O(1)的算法,判断其是否为回文结构。给定一个链表的头指针A,请返回一个bool值,代表其是否为回文结构。保证链表长度…

判定链表是否是回文串

判定链表是否是回文串

题目

对于一个链表,请设计一个时间复杂度为O(n),额外空间复杂度为O(1)的算法,判断其是否为回文结构。给定一个链表的头指针A,请返回一个bool值,代表其是否为回文结构。保证链表长度小于等于900。

思路

1. 处理边界情况:如果链表为空(A == null)或只有一个节点(A.next == null),那么它天然满足回文结构,直接返回 true。

2. 快慢指针找中点:使用两个指针 slow 和 fast,其中 fast 每次走两步、slow 每次走一步,当 fast 走到末尾时,slow 正好指向链表的中间节点。

3. 反转后半部分链表:从 slow 所在位置开始,使用三指针法(当前节点 cur、前驱节点 pre、临时保存下一个节点 curNext)将链表的后半部分进行原地反转。

4. 比较前后两段是否相同:定义两个指针 left(从头节点 A 开始)和 right(从反转后的后半段头节点 pre 开始),依次比较对应节点的值是否相等。

5. 返回最终结果:如果所有对应节点的值都相等,则说明链表是回文结构,返回 `true`;如果中途发现有不相等的节点,则立即返回 false。

代码
public class PalindromeList {public boolean chkPalindrome(ListNode A) {if (A == null || A.next == null) {return true;}ListNode slow = A, fast = A;while (fast != null && fast.next  != null) {slow = slow.next;fast = fast.next.next;}ListNode cur = slow,pre = null;while(cur != null) {ListNode curNext = cur.next;cur.next = pre;pre = cur;cur = curNext;}ListNode left = A,right = pre;while(right != null ) {if(left.val != right.val) return false;left = left.next;right = right.next;}return true;}
}
时间复杂度分析
  1. 快慢指针找中点(O(n)):

    • 使用快慢指针 slowfast,其中 fast 每次移动两步,slow 每次移动一步。

    • fast 遍历到链表末尾时,slow 刚好到达链表的中间位置。

    • 这个过程需要遍历整个链表一次,时间复杂度为 O(n)

  2. 反转后半部分链表(O(n)):

    • slow 开始,反转链表的后半部分。

    • 每个节点只被访问一次,因此时间复杂度为 O(n)

  3. 比较前后两部分(O(n)):

    • 将链表前半部分和反转后的后半部分逐个节点进行比较。

    • 最多遍历一半的链表长度,因此时间复杂度为 O(n)

总体时间复杂度

  • 所有步骤的时间复杂度都是 O(n),因此总体时间复杂度为 O(n)


空间复杂度分析

  1. 额外空间使用:

    • 快慢指针、反转链表以及比较过程中使用的变量都是常数级别的额外空间。

    • 没有使用任何额外的数据结构(如栈、数组等),也没有递归调用。

空间复杂度

  • 因此,算法的空间复杂度为 O(1),即仅使用了常数级别的额外空间。

总结

分析项复杂度
时间复杂度O(n)
空间复杂度O(1)
http://www.dtcms.com/wzjs/828883.html

相关文章:

  • 关于网站建设的合同协议书广州外贸网站咨询
  • 自己做网站的优势wordpress编辑器推荐
  • 崇明区建设镇网站广州品牌seo网站推广
  • 企业网站免费建站程序网站建设私人合同范本
  • 如何用front做网站网页wordpress段首空2字
  • 舞曲网站建设平面设计公司培训
  • 微网站免费注册网站优化的代码
  • 美团网站网站建设发展大连牛人网络推广有限公司
  • 晋中做网站公司网站吸引人的功能
  • 做网站和优化共多少钱做网站用什么虚拟服务器
  • 企业网站首页设计原则管理软件开发工程师
  • 郑州网站建设做推广吗网上最好购物网站
  • windows8 网站建站命令hello外贸人才网
  • 外贸型企业网站建设阿里云部署一个自己做的网站
  • 网站后台登陆不了WordPress图片上传最大尺寸
  • 南昌电商网站设计wordpress新闻模板
  • 郑州做定制网站的公司哪家好标题设计网站
  • 网站制作论文提供佛山顺德网站设计
  • 什么做网站做个多少钱啊成都专门做公司网站的公司
  • 财务网站模板中东跨境电商平台有哪些
  • 门户网站模版帝国管理系统导入新的模板怎么建网站?
  • 唐山建设工程安全监督网站微信公众号是干什么用的
  • 怎么用wordpress做搜索网站学校资源网站建设目标
  • 建站公司用的服务器建设部网站水利造价师
  • 搬家网站建设案例说明公司网站模板 html
  • 校园网站建设意见昆明平台开发公司
  • 生态网站模板网站收录地址
  • 域名解析到别的网站u钙网logo设计文字头像
  • 简速做网站做快餐料包的网站有哪些
  • 价格划算的做pc端网站云和数据培训机构怎么样