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

孝感网站建设xgsh成都seo经理

孝感网站建设xgsh,成都seo经理,厦门建设局耿家强,广州网站开发招聘给你一个单链表的头节点 head ,请你判断该链表是否为回文链表。如果是,返回 true ;否则,返回 false 。 示例 1: 输入:head [1,2,2,1] 输出:true 示例 2: 输入:hea…

给你一个单链表的头节点 head ,请你判断该链表是否为回文链表。如果是,返回 true ;否则,返回 false 。

示例 1:
在这里插入图片描述

输入:head = [1,2,2,1]
输出:true

示例 2:
在这里插入图片描述

输入:head = [1,2]
输出:false

提示:

链表中节点数目在范围[1, 105] 内
0 <= Node.val <= 9

进阶: 你能否用 O(n) 时间复杂度和 O(1) 空间复杂度解决此题?


解法一:通过数组记录,然后遍历判断是否回文
时间复杂度: O ( N ) O(N) O(N)
空间复杂度: O ( N ) O(N) O(N)

/*** Definition for singly-linked list.* struct ListNode {*     int val;*     ListNode *next;*     ListNode() : val(0), next(nullptr) {}*     ListNode(int x) : val(x), next(nullptr) {}*     ListNode(int x, ListNode *next) : val(x), next(next) {}* };*/
class Solution {
public:bool isPalindrome(ListNode* head) {vector<int> res;while(head != nullptr){res.push_back(head -> val);head = head -> next;}int n = res.size();for(int i = 0; i < n / 2; i++){if(res[i] != res[n-i-1])return false;}return true;}
};

解法二:

  • 计算出原链表的节点个数,找到后半部分头结点
  • 将后半部分链表反转,并记录翻转后的后半部分链表的头结点
  • 同时遍历前后两个链表,判断是否回文

时间复杂度: O ( N ) O(N) O(N)
空间复杂度: O ( 1 ) O(1) O(1)

class Solution {
public:bool isPalindrome(ListNode* head) {if(head -> next == nullptr) return true;// 计算出总节点数int cnt = 0;ListNode*  lh = head, * rh = head;while(head != nullptr){cnt++;head = head -> next;}// 找到后半部分的头结点for(int i = 1; i <= cnt / 2; i++){rh = rh->next;}// 记录左边结束的位置ListNode* ed = rh;// 反转后半部分链表ListNode* pre = nullptr, *ne;while(rh != nullptr){ne = rh -> next;rh->next = pre;pre = rh;rh = ne;}rh = pre; // 翻转后后半部分的头结点// 遍历两个部分,判断是否是回文while(lh != ed){if(lh->val != rh->val)return false;lh = lh -> next;rh = rh -> next;}return true;}
};
http://www.tj-hxxt.cn/news/17500.html

相关文章:

  • 国外网站兼职做效果图品牌营销公司
  • 能发朋友圈的网站建设语百度seo点击排名优化
  • 用台式机做网站服务器网站制作公司
  • 什么学做网站企业宣传方式
  • 哪个网站的课件做的好百度老年搜索
  • 西安做网站费用人员优化方案怎么写
  • 烟台市住房和规划建设管理局网站惠州网站建设方案推广
  • 河海大学学风建设网站广州关于进一步优化疫情防控措施
  • 兼职做页面的网站最近的新闻有哪些
  • 公众号推文制作网站沈阳网站制作优化推广
  • 如何用天地图做网站百度竞价返点一般多少
  • 网站空间和云主机seo信息是什么
  • 网页设计网站怎么放到域名里郑州seo优化哪家好
  • 专业网站建设价格大全怎么推广自己的店铺
  • 网站开发难不难东莞网络推广培训
  • 山东外贸国际网站建设如何进行搜索引擎优化 简答案
  • seo网站设计阿里云免费域名
  • 无锡网站开发平台百度云盘登录电脑版
  • 怎么自己做网站赚钱目前在哪个平台做推广好
  • 广西南宁电商网站建设谷歌浏览器手机版官网下载
  • 做染料的网站中国最新军事新闻
  • 建设网站能挣钱吗网站查询ip地址查询
  • 短链生成网站seo营销技巧培训班
  • 做细分领域的同城网站靠谱seo整站优化外包
  • 买目录做网站竞彩足球最新比赛
  • dwcc怎么做网站网站开发技术有哪些
  • 西青做网站网站制作免费
  • 医院网站制作公司重庆网站seo外包
  • 个人备案可以做哪些网站网站seo课设
  • 网站建设考试多选题seo实战论坛