leetcode 做题思路快查

58. 最后一个单词的长度

        考虑从字符串size() - 1处倒序的定义两个指针;多的空格用while(j > 0 && s[j] == ' ') j--跳过; 考虑"a" "_"这两个场景 

s45. 跳跃游戏 II

       思路:动态规划,f[i] = 0...i-1跳到i的最少步数;外层循环 0..len-1, 内层循环 0..i -1 (0..i - 1)跳跃到i的最少步数; 更新条件是 j + a[j] >= i(能到达i)

s53. 最大子数组和

       思路: 关键是当前子数组和

            // 当前子数组和currentSum = max(currentSum + nums[l], nums[l]);maxSum = max(maxSum, currentSum);

128. 最长连续序列 

       arr = 1 2 3 4 100 200;

        A. for将元素加入hash_set; B.对于每个x, x-1不在hash_set则x是bengin节点,begin_vev = 1 , 100 , 200; C. 对于bengin_vec中,如果x++在hash_set,则序列长度++

151. 反转字符串中的单词

        思路1:python api, split, reverse;

        思路2:考虑从字符串size() - 1处倒序的定义两个指针;多的空格用while(s[j] == ' ') j--跳过;

14. 最长公共前缀

155. 最小栈

        思路:使用第2个辅助栈,记录最小元素

20. 有效的括号

21. 合并两个有序链表

141. 环形链表

       快慢指针fast, slow; 如果slow==fast

146. LRU 缓存1

42. 接雨水

        1. 单调递减栈【3, 2】, 如果遇见4比2大,那么3,2, 4中间可以取雨水

92. 反转链表 II

206. 反转链表

        思路:头插法

100. 相同的树

        思路1: 递归

104. 二叉树的最大深度

        思路1:最简单的思路递归 1 + max(depth(node->left), depth(node->right))

        思路2:使用栈实现递归,stk.push(root); while(!stk.empty) {}

200. 岛屿数量

        1. 上下左右DFS,2. 遍历过的标记为2

17. 电话号码的字母组合   

        思路:回溯DFS

23. 合并 K 个升序链表

        思路1: 分治法

        思路2:大顶堆,需要实现大顶堆的排序方法

    struct Status {int val;ListNode *ptr;bool operator < (const Status &rhs) const {return val > rhs.val;}};priority_queue <Status> q;

3. 无重复字符的最长子串 tag 滑动窗口

//外层循环扩展右边界,内层循环扩展左边界
for (int l = 0, r = 0 ; r < n ; r++) {//当前考虑的元素while (l <= r && check()) {//区间[left,right]不符合题意//扩展左边界}//区间[left,right]符合题意,统计相关信息
}
5. 最长回文子串

        题目:s=babad 输出 aba

        思路:f(i,j) = 1, s[i:j] 为回文;

        初始化f(i,i)=1; 状态转移 f(i-1, j+1) = f(i,j) & s[i] == s[j]; 

        边界条件, i - 1 > 0, j + 1 < n

        循环:外循环,枚举字串长度, 内循环,枚举左边界

215. 数组中的第K个最大元素

        思路1:使用堆来求解,建立大顶堆,再将头部元素pop出来.  priority_queue<int> pQ;

        思路2:快排后取值

67. 二进制求和

        思路:大数字求和,需要考虑进位;

121. 买卖股票的最佳时机

      输入:[7,1,5,3,6,4], 输出 5

      思路:变量A记录下标i天以前最低的股价,变量B = arr[i] - A, 对B求最大

189. 轮转数组

      思路:旋转2次;1 2 3 4 5 ==> 3 2 1, 5 4 ==> 4 5 1 2 3

26. 删除有序数组中的重复项

      思路:定义slow, fast;slow指向要更新的元素,fast指向检查的元素,如果fast == fast - 1 => slow++ = fast++;

X.合并两个有序数组

考虑到a[], m; b[], n; 对a采用逆序的将a, b 中的元素放入a. 这样就不需要额外空间;        

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/69563.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Ollama 部署 DeepSeek-R1 及Open-WebUI

Ollama 部署 DeepSeek-R1 及Open-WebUI 文章目录 Ollama 部署 DeepSeek-R1 及Open-WebUI〇、说明为什么使用本方案 一、 安装Ollama1、主要特点&#xff1a;2、安装3、验证 二、Ollama 部署 DeepSeek1、部署2、模型选用3、Ollama 常用命令4、Ollama模型默认存储路径 安装open-w…

feign Api接口中注解问题:not annotated with HTTP method type (ex. GET, POST)

Bug Description 在调用Feign api时&#xff0c;出现如下异常&#xff1a; java.lang.IllegalStateException: Method PayFeignSentinelApi#getPayByOrderNo(String) not annotated with HTTPReproduciton Steps 1.启动nacos-pay-provider服务&#xff0c;并启动nacos-pay-c…

网络计算机的相关概念整理

网络计算机的五个组成部分 单个计算机是无法进行通信的。所以需要借助网络。 下面介绍一些在网络里常见的设备。 一、服务器 服务器是在网络环境中提供计算能力并运行软件应用程序的特定IT设备 它在网络中为其他客户机&#xff08;如个人计算机、智能手机、ATM机等终端设备&…

Python微博动态爬虫

本文是刘金路的《语言数据获取与分析基础》第十章的扩展&#xff0c;详细解释了如何利用Python进行微博爬虫&#xff0c;爬虫内容包括微博指定帖子的一级评论、评论时间、用户名、id、地区、点赞数。 整个过程十分明了&#xff0c;就是用户利用代码模拟Ajax请求&#xff0c;发…

[NKU]C++安装环境 VScode

bilibili安装教程 vscode 关于C/C的环境配置全站最简单易懂&#xff01;&#xff01;大学生及初学初学C/C进&#xff01;&#xff01;&#xff01;_哔哩哔哩_bilibili 1安装vscode和插件 汉化插件 ​ 2安装插件 2.1 C/C 2.2 C/C Compile run ​ 2.3 better C Syntax ​ 查看已…

SpringCloud学习笔记(五)

8.Seata分布式事务 8.1. Seata简介 Seata是一款开源的分布式事务解决方案&#xff0c;致力于提供高性能和简单易用的分布式事务服务。 8.2. Seata工作组件 XID&#xff1a;全局事务的唯一标识&#xff0c;在微服务调用链中传递&#xff0c;绑定到服务的事务的上下文。TC&…

(14)gdb 笔记(7):以日志记录的方式来调试多进程多线程程序,linux 命令 tail -f 实时跟踪日志

&#xff08;44&#xff09;以日志记录的方式来调试多进程多线程程序 &#xff1a; 这是老师的日志文件&#xff0c;可以用来模仿的模板&#xff1a; &#xff08;45&#xff09;实时追踪日志的 tail -f 命令&#xff1a; &#xff08;46&#xff09; 多种调试方法结合起来用 …

重生之我要当云原生大师(十四)分析和存储日志

目录 一、简述常用的日志文件所存储的消息类型。 二、syslog的优先级&#xff1f; 三、维护准确时间的意义&#xff1f; 一、简述常用的日志文件所存储的消息类型。 1. 系统日志文件 /var/log/messages 消息类型&#xff1a;通用的系统日志文件&#xff0c;记录系统启动、…

Goland 内存逃逸问题

内存逃逸是什么&#xff1f; 在go语言中&#xff0c;内存分配存在两个方式&#xff1a;堆分配&#xff1b;栈分配。 栈分配&#xff1a;是在函数调用时为局部变量分配内存&#xff0c;当函数返回时&#xff0c;这些内存会自动释放。 堆分配&#xff1a;通过 new 或者 make 函…

视觉硬件选型和算法选择(CNN)

基础知识 什么是机械视觉: 机械视觉是一种利用机器代替人眼来进行测量和判断的技术&#xff0c;通过光学系统、图像传感器等设备获取图像&#xff0c;并运用图像处理和分析算法来提取信息&#xff0c;以实现对目标物体的识别、检测、测量和定位等功能。 机械视觉与人类视觉有什…

尝试一下,交互式的三维计算python库,py3d

py3d是一个我开发的三维计算python库&#xff0c;目前不定期在PYPI上发版&#xff0c;可以通过pip直接安装 pip install py3d 开发这个库主要可视化是想把自己在工作中常用的三维方法汇总积累下来&#xff0c;不必每次重新造轮子。其实现成的python库也有很多&#xff0c;例如…

【C++高并发服务器WebServer】-15:poll、epoll详解及实现

本文目录 一、poll二、epoll2.1 相对poll和select的优点2.2 epoll的api2.3 epoll的demo实现2.5 epoll的工作模式 一、poll poll是对select的一个改进&#xff0c;我们先来看看select的缺点。 我们来看看poll的实现。 struct pollfd {int fd; /* 委托内核检测的文件描述符 */s…

深度分析:网站快速收录与网站内容多样性的关系

本文转自&#xff1a;百万收录网 原文链接&#xff1a;https://www.baiwanshoulu.com/87.html 网站快速收录与网站内容多样性之间存在着密切的关系。以下是对这一关系的深度分析&#xff1a; 一、网站内容多样性对快速收录的影响 提升搜索引擎抓取效率&#xff1a; 多样化的…

接入 deepseek 实现AI智能问诊

1. 准备工作 注册 DeepSeek 账号 前往 DeepSeek 官网 注册账号并获取 API Key。 创建 UniApp 项目 使用 HBuilderX 创建一个新的 UniApp 项目&#xff08;选择 Vue3 或 Vue2 模板&#xff09;。 安装依赖 如果需要在 UniApp 中使用 HTTP 请求&#xff0c;推荐使用 uni.requ…

PLSQL: 存储过程,用户自定义函数[oracle]

注意: raise notice是高斯的输出语句; DBMS_OUT_PUT.PUT_LINE是oracle的输出语句 存储过程 Stored Procedure 存储过程可以封装数据访问逻辑&#xff0c;使得应用程序可以通过调用存储过程来执行这些逻辑&#xff0c;而不是直接执行SQL语句。这有助于提高代码的可重用性、可…

从零开始玩转Docker:轻松开启容器化之旅

一、什么是 Docker Docker 是一个开源的应用容器引擎&#xff0c;让开发者可以打包他们的应用以及依赖包到一个可移植的容器中&#xff0c;然后发布到任何流行的 Linux 机器上&#xff0c;也可以实现虚拟化。简单来说&#xff0c;Docker 就像是一个超级 “快递箱”&#xff0c…

deepseek+kimi自动生成ppt

打开deepseek官网&#xff0c;输入详细的需求&#xff0c;让他生成个ppt 接着deepseek开始思考生成了 接着复制生成了的内容 打开kimi粘贴刚才deepseek生成的内容 可以一键生成啦&#xff0c;下载编辑使用吧

关于预训练后训练、LLM和视频大模型相关学习记录

Pre-training与Post-training 预训练主要是“模仿”&#xff0c;而后训练则是“创造” 预训练对数据质量的要求不高&#xff0c;而后训练对数据质量的要求较高 预训练&#xff1a;模型通过预测海量互联网文本数据中的下一个 token&#xff0c;学习语言的通用规律&#xff0c;得…

单张照片可生成写实3D头部模型!Adobe提出FaceLift,从单一的人脸图像中重建出360度的头部模型。

FaceLift是Adobe和加州大学默塞德分校推出的单图像到3D头部模型的转换技术,能从单一的人脸图像中重建出360度的头部模型。FaceLift基于两阶段的流程实现:基于扩散的多视图生成模型从单张人脸图像生成一致的侧面和背面视图;生成的视图被输入到GS-LRM重建器中,产出详细的3D高斯表…

一文了解服务端渲染及前端在服务端渲染上的应用

文章目录 服务端和 vs 客户端概念应用场景需求考量优缺点 服务端渲染应用Nuxt.js 介绍概念特点应用场景 Nuxt 与 Vue 3 的综合应用支持情况开发步骤1. 项目初始化2. 使用组合式 API3. 集成 Vue 3 插件4. 静态站点生成和服务器端渲染 优势 Next.js 介绍概念特点应用场景 Next 与…