单链表相关面试题--7.链表的回文结构
7.链表的回文结构
链表的回文结构_牛客题霸_牛客网 (nowcoder.com)

/*
解题思路:
此题可以先找到中间节点,然后把后半部分逆置,最近前后两部分一一比对,如果节点的值全部相同,则即为回文。
*/
class PalindromeList {
public:bool chkPalindrome(ListNode* A) {if (A == NULL || A->next == NULL)return true;ListNode* slow, *fast, *prev, *cur, *nxt;slow = fast = A;//找到中间节点while (fast && fast->next){slow = slow->next;fast = fast->next->next;}prev = NULL;//后半部分逆置cur = slow;while (cur){nxt = cur->next;cur->next = prev;prev = cur;cur = nxt;}//逐点比对while (A && prev){if (A->val != prev->val)return false;A = A->next;prev = prev->next;}return true;}
};
/*
此题也可以先把链表中的元素值全部保存到数组中,然后再判断数组是否为回文。不建议使用这种解法,因为如果没有告诉链表最大长度,则不能同此解法
*/
class PalindromeList {
public:bool chkPalindrome(ListNode* A) {// write code hereint a[900] = {0};ListNode* cur = A;int n = 0;//保存链表元素while(cur){a[n++] = cur->val;cur = cur->next;}//判断数组是否为回文结构int begin = 0, end = n-1;while(begin < end){if(a[begin] != a[end])return false;++begin;--end;}return true;}
};
相关文章:
单链表相关面试题--7.链表的回文结构
7.链表的回文结构 链表的回文结构_牛客题霸_牛客网 (nowcoder.com) /* 解题思路: 此题可以先找到中间节点,然后把后半部分逆置,最近前后两部分一一比对,如果节点的值全部相同,则即为回文。 */ class PalindromeList…...
JUC(Java Util Concurrent)多线程并发库
JUC(Java Util Concurrent)是Java中用于编写多线程并发程序的库。开发过程中使用JUC主要有以下几个好处: 1. 提高程序性能:使用JUC可以实现多线程并发执行,充分利用多核CPU,提高程序的性能。 2. 简化代码…...
如何在Linux系统上检测GPU显存和使用情况?
如何在Linux系统上检测GPU显存和使用情况? 在Linux系统上,你可以使用一些命令行工具来检测GPU显存和使用情况。以下是一些常用的方法: 1. 使用nvidia-smi(仅适用于NVIDIA GPU) 如果你使用的是NVIDIA的显卡࿰…...
Django 入门学习总结5
修改polls/detail.html文件,写一个表单: <form action"{% url polls:vote question.id %}" method"post"> {% csrf_token %} <fieldset> <legend><h1>{{ question.question_text }}</h…...
FileNotFoundError: [Errno 2] No such file or directory: ‘patchelf‘: ‘patchelf‘
sudo apt-get install patchelf...
『new Date 在 IOS 失效 の bug』
问题:new Date()在安卓下正常,在IOS下显示不出来。 原因:在IOS下,new Date(“2000-2-22 00:10”),返回的是undefined,因为IOS不支持这种类型格式。 解决:更换下格式:new Date(“2000/2/22”) …...
macos创建xcframework及签名
前言 Framework 可以理解为封装了共享资源的具有层次结构的文件夹,共享资源可以是 nib文件、国际化字符串文件、头文件、库文件等等。它同时也是一个 Bundle,里面的内容可以通过 Bundle 相关 API 来访问。Framework 可以是 static framework 或 dynamic…...
Oracle与Redis Enterprise协同,作为企业缓存解决方案
来源:虹科云科技 虹科干货丨Oracle与Redis Enterprise协同,作为企业缓存解决方案 欢迎关注虹科,为您提供最新资讯! 单独使用Oracle作为企业缓存数据库时,会出现哪些问题呢?使用Redis Enterprise与Oracle共…...
局部保持投影(Locality preserving projections,LPP)
局部保持投影(Locality preserving projections,LPP) 方法概述 核心思想 有映射 Y m ∗ n f ( X d ∗ n ) \underset{m*n}{Y}f(\underset {d*n}X) m∗nYf(d∗nX),能够实现将d维的样本变换到m维空间之中 假设:对…...
Flutter:引领移动开发新潮流,跨平台应用程序的终极解决方案
文章目录 一、介绍二、环境搭建三、基础组件四、生命周期管理五、路由控制六、网络请求七、数据存储八、调试与优化《从零基础到精通Flutter开发》特色内容简介作者简介目录获取方式 一、介绍 Flutter是由Google开发的一款开源移动应用开发框架,它可以帮助开发者快…...
开源免费的流程设计器如何选型
大家在开发OA办公自动化、ERP、CRM、BPM、低代码平台等项目的时候,经常用到流程引擎,目前主流的开源流程引擎有activiti、flowable、camunda。这几个开源的流程引擎均基于BPMN2.0国际规范标准,其功能均比较强大,接口也很丰富。但涉…...
设置pdb自动启动
参考文档: How to Preserve Open Mode of PDBs When the CDB Restarts (Doc ID 1933511.1) -- 查看pdb的保留状态.无保留状态 select * from DBA_PDB_SAVED_STATES; SYScdbtest SQL> select * from DBA_PDB_SAVED_STATES;no rows selectedSYScdbtest SQL> -…...
抖店入驻成功后,新手需要怎么做?7天起店流程教会你!
我是电商珠珠 在抖店入驻成功后,很多新手并不知道怎么将抖店做起来。 我做抖店也已经3年时间了,期间也带着想做店的小伙伴一起,是第一波入驻抖店,并吃到抖店红利的商家。 虽然现在抖店起店比着去年、前年相对难了一些ÿ…...
RTS 客户端-服务器网络
Stone Monarch 从一开始就支持多人游戏,但随着时间的推移,网络模型经历了多次迭代。我最初基于这篇著名的帝国时代文章实现了点对点锁步模型。 点对点锁定步骤有一些众所周知的问题。点对点方面使玩家很难相互连接,并增加了每个新玩家的网络…...
python连接数据库的方式
python连接数据库的方式 pyzenith.connect()函数就是连接数据库; exception.ScriptException()这一句是自定义异常,可以不用我这个; finally里面还有一个try finally是有必要的,防止…...
【腾讯云云上实验室-向量数据库】探索腾讯云向量数据库:全方位管理与高效利用多维向量数据的引领者
目录 前言1 腾讯云向量数据库介绍2 向量数据库信息及设置2.1 向量数据库实例信息2.2 实例监控2.3 密钥管理2.4 安全组2.5 Embedding2.6 可视化界面 3 可视化界面4 Embedding4.1 embedding_coll精确查询4.2 unenabled_embedding_coll精确查询 5 数据库5.1 创建数据库5.2 插入数据…...
二、sql手工注入
一、SQL注入的本质 解释:想要进行sql注入,肯定要发现注入点,一般简单的sql注入通过下面两种方式判断就能发现是否存在sql注入漏洞 1.字符型 注意:字符型注入可能为或" 查询语句: select * from student where…...
day61 layui和分页原理
昨日内容回顾 choices参数的使用 一般用在什么场景:当被存储的字段数据可能被列举完毕的时候一般会使用choices参数 性别 学历 来源 工作经验等 一般情况下不在数据表中直接存储中文,存数字、存字母来做映射 # 怎么使用 gender_choices ((1, 男),(2…...
Rust开发——变量、静态变量与常量
1.变量 在 Rust 中,类型安全是通过静态类型系统来实现的。变量绑定默认情况下是不可变的(immutable)。 在 Rust 中声明一个变量时,默认情况下它是不可变的。例如: fn main() {let x :i32 5; // 这是一个…...
javascript Math相关计算取值属性方法
*向上取整【只要有小数就+1】 Math.ceil(3.14); // 4 *向下取整【有小数就舍弃】 Math.floor(3.14); // 3 parseInt(3.14); // 3 // 常用于字符串类型的数字转为十进制的数据 四舍五入【小数点后部分】 Math.round(11.5)); //12 Math.round(-11.5)); //-11 取两数…...
【2026最新】Arduino IDE下载安装汉化保姆级教程(附安装包)
简介: Arduino IDE是全球最易用的开源单片机开发环境,专为初学者设计,支持Win/macOS/Linux全平台,免费开源。界面简洁、汉化便捷,配套教程丰富,兼容海量硬件与项目,助电子爱好者、学生和创客快…...
命令行进度条完全指南:倒计时、缓冲区刷新与动态下载
进度条—命令行版本 前置知识 1.回车换行 \r:回车,将光标移动到当前行的开头。\n:换行,将光标移动到下一行的相同位置(通常是下一行开头)。在终端中,单独使用 \r 可以实现在同一行覆盖输出&…...
Go语言Goroutine与Channel深度解析
前言Go语言最核心的特性是并发原生支持,通过Goroutine和Channel实现轻量级并发。Goroutine是由Go运行时管理的轻量级线程,创建成本极低(约2KB栈空间),而Channel则为Goroutine之间的通信提供了安全、高效的机制。本文深…...
Gemma 4工具调用:Python实现大语言模型自动化任务处理
1. 项目概述:Gemma 4工具调用的核心价值Gemma 4作为当前最先进的轻量级开源大语言模型,其工具调用能力正在改变开发者与AI系统的交互方式。不同于传统API调用,工具调用(Tool Calling)允许模型主动识别用户意图…...
别再用水上标定法了!手把手教你用SVP模型搞定水下相机校准(附Python代码)
水下相机标定的革命:用SVP模型突破折射难题的完整指南 想象一下,你精心设计的水下机器人搭载着高清相机,却在第一次实战中拍出了扭曲变形的图像——这不是相机故障,而是光在水与空气界面折射导致的经典问题。传统的水上标定方法在…...
HTML中使用Canvas动态图形渲染:解锁Web交互新维度
在Web开发领域,动态图形渲染是构建沉浸式用户体验的核心技术之一。HTML5的<canvas>元素凭借其强大的JavaScript API,为开发者提供了在浏览器中直接操作像素的底层能力。从实时数据可视化到交互式动画,Canvas正在重新定义Web应用的视觉表…...
基于安卓的母婴用品租赁与回收平台毕设源码
博主介绍:✌ 专注于Java,python,✌关注✌私信我✌具体的问题,我会尽力帮助你。一、研究目的本研究旨在设计并实现一个基于安卓平台的母婴用品租赁与回收系统以解决当前母婴用品市场中存在的资源浪费与供需失衡问题。随着我国二孩政策实施及生育观念转变母…...
5分钟快速上手:ONNX+AWS Lambda打造超轻量AI推理服务终极指南
5分钟快速上手:ONNXAWS Lambda打造超轻量AI推理服务终极指南 【免费下载链接】onnx Open standard for machine learning interoperability 项目地址: https://gitcode.com/gh_mirrors/onn/onnx ONNX作为机器学习互操作性的开放标准,让AI模型能够…...
用 PHP 实现一个简单的“背包算法”,解决优惠券最优组合问题。
它的本质是:在有限的“预算约束”(背包容量)下,从一组“优惠券”(物品)中选择子集,使得“减免金额”(价值)最大化。这是一个经典的 0/1 背包问题 (0/1 Knapsack Problem)…...
git-recall 与团队协作:如何高效监控团队成员的工作进展
git-recall 与团队协作:如何高效监控团队成员的工作进展 【免费下载链接】git-recall An interactive way to peruse your git history from the terminal 项目地址: https://gitcode.com/gh_mirrors/gi/git-recall 在团队开发中,及时了解成员的…...
