2024年10月28日练习(双指针算法)
一.11. 盛最多水的容器 - 力扣(LeetCode)
1.题目描述:

这个题目代表的意思就是数组上每个对应的值就相当于每条垂直线的高度,就相当于短板效应,两
个高度的线会取最短的长度因为那样水才不会漏。而两条线的数组的下标相减就相当于长度,而
容积就是长度乘以高度。而这里就是找容积最高的。
2.算法原理:
方法一:
暴力解法,就是将所有情况都过一遍,然后找出容积最大的那种情况,这里用两层for循环即
可解决,就是先固定一条线,然后另一条线走,也就是固定的那条线就是外层循环,另一条线走就
是内层循环。但是这样的时间复杂度就是O(n^2)这样时间就会超时,是错误的。
方法二:

这是我们利用数组里的一小段分析出来的规律,那么要想找到整个数组就要按照这种规律来,先直
接找一头一尾的容积,然后记录下来:

如果左边指针的数小于右边指针的数那么就左边的加加,然后得到一个新的容积,然后比较一下这
两个容积的大小:

如果右边的数小于左边的数,那么右边减减,得到一个新的容积再去比较:

就这样一步步比较,然后直到两个指针相遇就结束循环,然后找到最大的容积。
3.代码展示:
class Solution {
public:int maxArea(vector<int>& height) {int left=0;int right=height.size()-1;int ret=0;while(left<right){int v=min(height[left],height[right])*(right-left);ret=max(ret,v);if(height[left]>height[right]){right--;}else{left++;}} return ret;}
};
二.202. 快乐数 - 力扣(LeetCode)

1.题目描述:
也就是拆解每一位数然后平方再加在一起就和,然后如果最后这样到1了,那么就是快乐数了,如
果一直循环到不了1,那么就不是快乐数。
现在看两个例子就能更加显而易见了:

这个就是快乐数的循环情况。

这种就是无限循环但始终出现不了一的情况。

这题目的意思也就是我们上面说的那两种情况,就都是会有环出现的
2.算法原理:
总结一下上面讲到的两种情况:

第一种情况就是快乐数的情况,循环里一直是1,而第二种情况是不是快乐数,但其始终会出现循
环的情况。
这图一画就想到了之前做到过的题目就是判断一个链表是否是循环链表的那个题目:
环形链表题解析-CSDN博客
在这里我们仅需要判断一下这个环里面的数是否为1即可,在环形链表的题目中我们判断链表是否
有环,利用的是快慢指针来写的,所以这里我们也可以用快慢双指针。

这里思想不要被限制死了,并不是定义两个真正的指针,这里是利用每次拆分出来的数作为指针来
移动的:

变一次那么slow就变成4,变两次那么fast变成16:

所以接下来的就是利用数来操作快慢双指针的。
3.代码展示:
class Solution {
public:int Sum(int n)//用来拆分每位数然后求和{int sum=0;while(n){int tmp=n%10;sum+=tmp*tmp;n/=10;}return sum;}bool isHappy(int n) {int slow=n,fast=Sum(n);while(slow!=fast){slow=Sum(slow);//慢指针走一步fast=Sum(Sum(fast));//快指针走两步}//此时退出循环时已经相遇,此时判断一下相遇的值是否为1即可:return slow==1;}
};
相关文章:
2024年10月28日练习(双指针算法)
一.11. 盛最多水的容器 - 力扣(LeetCode) 1.题目描述: 这个题目代表的意思就是数组上每个对应的值就相当于每条垂直线的高度,就相当于短板效应,两 个高度的线会取最短的长度因为那样水才不会漏。而两条线的数组的下标…...
Objective-C 音频爬虫:实时接收数据的 didReceiveData_ 方法
在互联网技术领域,数据的获取和处理是至关重要的。尤其是对于音频内容的获取,实时性和效率是衡量一个爬虫性能的重要指标。本文将深入探讨在Objective-C中实现音频爬虫时,如何高效地使用didReceiveData:方法来实时接收数据,并通过…...
提升网站流量和自然排名的SEO基本知识与策略分析
内容概要 在当今数字化时代,SEO(搜索引擎优化)成为加强网站可见度和提升流量的重要工具。SEO的基础知识包括理解搜索引擎的工作原理,以及如何通过优化网站内容和结构来提高自然排名。白帽SEO和黑帽SEO代表了两种截然不同的策略&a…...
雷池社区版compose文件配置讲解--fvm
在现代网络安全中,选择合适的 Web 应用防火墙至关重要。雷池(SafeLine)社区版免费切好用。为网站提供全面的保护,帮助网站抵御各种网络攻击。 docker-compose.yml 文件是 Docker Compose 的核心文件,用于定义和管理多…...
基于51单片机的智能断路器proteus仿真
地址: https://pan.baidu.com/s/16lfGgrgVr9V7JehonMNVQA 提取码:1234 仿真图: 芯片/模块的特点: AT89C52/AT89C51简介: AT89C52/AT89C51是一款经典的8位单片机,是意法半导体(STMicroelectro…...
(N-154)基于springboot酒店预订管理系统
开发工具:IDEA 服务器:Tomcat9.0, jdk1.8 项目构建:maven 数据库:mysql5.7 前端技术:AdminLTEBootstrapLayUIHTMLjQuery 服务端技术:springbootmybatis-plusthymeleaf 本项目分前台和后台…...
elasticsearch 8.x 插件安装(三)之拼音插件
elasticsearch 8.x 插件安装(三)之拼音插件 elasticsearch插件安装合集 elasticsearch插件安装(一)之ik分词器安装(含MySQL更新) elasticsearch 8.x插件(二)之同义词安装如何解决…...
快速遍历包含合并单元格的Word表格
Word中的合并表格如下,现在需要根据子类(例如:果汁)查找对应的品类,如果这是Excel表格,那么即使包含合并单元格,也很容易处理,但是使用Word VBA进行查找,就需要一些技巧。…...
手机收银云进销存管理软件,商品档案Excel格式批量导入导出,一键导入Excel的商品档案
如果您有Excel的商品档案,那么就可以批量导入到我们的手机云进销存软件系统里,就不需要人工手工一个个商品的新建商品档案,大大提高工作效率。如果您看下面的步骤不会操作,可以联系我们技术支持,来帮您把商品档案导入。…...
html 中识别\n自动换行
CSS实现:white-space <div style"white-space: pre-wrap;" v-html"str"> </div>white-space: normal|nowrap|pre|pre-line|pre-wrap|initial|inherit;值描述换行符空格和制表符文字换行行尾空格normal默认。空白会被浏览器忽略。合…...
用QWebSocketServer写websocket服务端
1. 引入必要的头文件 #include <QCoreApplication> #include <QWebSocketServer> #include <QWebSocket> #include <QDebug> #include <QObject>QCoreApplication:用于创建控制台应用的事件循环。QWebSocketServer:提供 …...
云原生后端:现代应用架构的核心力量
云原生后端:现代应用架构的核心力量 云原生后端是基于云环境进行设计和开发的一种理念,利用云服务和云原生技术构建的服务端应用。它旨在提供灵活、高效、弹性和可扩展的解决方案,成为推动应用现代化的核心力量。本文将详细探讨云原生后端的…...
arcgis中dem转模型导入3dmax
文末分享素材 效果 1、准备数据 (1)DEM (2)DOM 2、打开arcscene软件 3、加载DEM、DOM数据 4、设置DOM的高度为DEM...
Python自动化测试中的Mock与单元测试实战
在软件开发过程中,自动化测试是确保代码质量和稳定性的关键一环。而Python作为一门灵活且强大的编程语言,提供了丰富的工具和库来支持自动化测试。本文将深入探讨如何结合Mock与单元测试,利用Python进行自动化测试,以提高代码的可…...
物联网海量数据下的时序数据库选型:InfluxDB、TDEngine、MongoDB与HBase对比与建议
随着物联网(IoT)的普及,各行业纷纷部署大量传感器、设备生成的数据流,面对如此海量的时间序列数据,如何高效存储、查询和分析成为关键。为此,时序数据库(Time Series Database, TSDB)…...
Python中的数据可视化:Matplotlib基础与高级技巧
Python中的数据可视化:Matplotlib基础与高级技巧 数据可视化是数据分析和数据科学中不可或缺的一部分。通过图表,我们可以更直观地观察数据的分布和趋势。Matplotlib作为Python最基础、也是最广泛使用的绘图库之一,不仅支持多种常用图表&…...
数组名和指针数组名深度复习
#define _CRT_SECURE_NO_WARNINGS #include <stdio.h> //sizeof只关注占用内存空间的大小,不在乎内存中存放的是什么 //是操作符 /* int main() { char arr[] { "abcdef" }; //a b c d e f \0 printf("%d\n", sizeof(arr));//…...
Linux 诞生
目录 Linux诞生背景 Linus Torvalds的创举 Linux内核的首次发布 Linux诞生背景 在计算机操作系统的发展史上,Linux是一个重要的里程碑。它的诞生源于对自由、开放和协作精神的追求,以及对Unix操作系统的深入研究和改进。 在1991年之前,Un…...
借助Aspose.Email,管理受密码保护的 PST 文件
在当今的数字环境中,保护您的数据比以往任何时候都更加重要。确保您的电子邮件数据受到密码保护是维护安全性的关键步骤。对于使用 Microsoft Outlook 数据的开发人员来说,管理受密码保护的 PST(个人存储表)文件可能是一项关键任务…...
MySQL数据库MHA高可用
目录 一、MHA简述 二、MHA 的组成 三、MHA 的特点 四、MHA工作原理 五、MHA部署步骤 六、搭建 MySQL MHA MHA一主两从高可用集群示意图 实验环境 1. Master、Slave1、Slave2 节点上安装 mysql5.7 2. 关闭防火墙 3. 修改 Master、Slave1、Slave2 节点的主机名 4. 修…...
告别PS!Qwen-Image-Edit-2509小白入门:文字描述就能精准编辑图片
告别PS!Qwen-Image-Edit-2509小白入门:文字描述就能精准编辑图片 1. 为什么你需要这个AI修图神器 想象一下这样的场景:你刚拿到一批产品照片,老板要求"把背景换成纯白色、给所有商品加上价格标签、把老款手机换成最新型号&…...
RT-Thread中uORB模块的轻量级实现与优化策略
1. uORB模块的核心价值与RT-Thread适配挑战 uORB(Micro Object Request Broker)最初诞生于PX4飞控系统,它的设计初衷是解决嵌入式系统中多模块间高效通信的问题。想象一下,在一个无人机飞控系统中,传感器数据、控制指令…...
从XSS到权限提升:用STRIDE模型复盘我们被黑掉的SaaS平台
SaaS平台安全攻防实录:基于STRIDE模型的渗透路径分析与防御实践 凌晨3点17分,我们的监控系统突然发出刺耳的警报声——某个核心数据库正在被异常导出。当安全团队赶到时,攻击者已经通过前端评论区的XSS漏洞完成了从用户权限到超级管理员权限的…...
Qwen3.5-9B企业应用实战:金融文档理解+图表分析+摘要生成一体化
Qwen3.5-9B企业应用实战:金融文档理解图表分析摘要生成一体化 1. 引言:金融文档处理的智能化革命 金融行业每天产生海量的PDF报告、财报数据、市场分析图表等非结构化文档。传统的人工处理方式面临三大痛点: 效率瓶颈:分析师需…...
简单几步:搭建属于你的Qwen3-ASR语音识别服务
简单几步:搭建属于你的Qwen3-ASR语音识别服务 你是否曾为整理冗长的会议录音而头疼?是否想给外语视频快速配上字幕却苦于语言障碍?或者,你的业务需要处理带有各种方言的音频内容?传统的语音识别工具要么识别率堪忧&am…...
提供复杂文档解析能力的 API 或软件?
2026 年《政府工作报告》明确提出加强票据、应收账款电子凭证规范管理,同时聚焦经营主体发展推进数字化转型相关服务,这对企业电子凭证、各类业务文档的高效处理与合规管理提出了更高要求。在 RAG 知识库构建、大模型文档问答、企业财税凭证处理等场景中…...
推理引擎系列(六)《vLLM-Ascend 大模型推理》
目录 vLLMvLLM-ascend 整体规划和架构 社区演进概述 华为昇腾技术路线 昇腾推理架构解析 vLLM 核心技术 推理精度分析方法 精度分析工具 常见问题与解决方案 Badcase 分析 推理性能分析方法 性能分析工具 性能问题定位 性能数据分析 PD 分离场景调优 vLLM-ascen…...
终极指南:Facets移动端适配的完整实践方案
终极指南:Facets移动端适配的完整实践方案 【免费下载链接】facets Visualizations for machine learning datasets 项目地址: https://gitcode.com/gh_mirrors/fa/facets Facets作为一款强大的机器学习数据集可视化工具,提供了直观的数据探索体验…...
基层家庭医生最缺的不是时间,而是这个AI分身:用OpenClaw打造本地慢病管理Agent实战
你是不是也发现,基层家庭医生每天被电子病历、慢病随访、用药提醒这些行政工作压得喘不过气?患者在家测完血压血糖发过来,医生却要手动比对指南、写随访记录、安排下次复查。时间全耗在重复劳动上,真正看病的时间反而少了。 2026…...
ComfyUI保姆级安装指南:从零配置Python环境到共享WebUI模型库(避坑大全)
ComfyUI终极安装指南:复用WebUI资源与高效配置实战 第一次接触ComfyUI时,我被它那类似Blender的节点式界面震撼到了——这完全颠覆了我对AI绘画工具的认知。但随之而来的安装过程却让我这个有三年Stable Diffusion使用经验的老用户也踩了不少坑。最头疼…...
