leetcode刷题日记:121. Best Time to Buy and Sell Stock( 买卖股票的最佳时机)

题目给了我们一组数prices,其中prices[i]表示第i天的股票价格,需要我们求出买卖股票所能获得的最大收益。 我们的第一想法就是从算出每一种买卖股票的情况然后求出里面的最大值,这样我们就能得到最大收益是多少,但是这种情况过于复杂他需要考虑前一天和后面所有天的情况,这无疑是复杂的,因为我们可以大致算出时间复杂度是 O ( n 3 ) O(n^3) O(n3),这在问题规模较小时还可以接受一旦问题规...

leetcode:2926. 平衡子序列的最大和 【树状数组维护最大前缀和】

题目链接 lc2926 题目描述 题目思路 定义b[i] = nums[i] - i 目标是从b中找到一个非降子序列使得元素和最大 # b[i] = nums[i] - i # 找到b的一个非降子序列使得元素和最大 # f[i]: 子序列最后一个数下标是i,对应的最大子序列 # f[i] = max (max f[j], 0) + nums[i] (j < i and b[j] <= b[i]) # 也...

【LeetCode】每日一题 2023_11_6 最大单词长度乘积

文章目录 刷题前唠嗑题目:最大单词长度乘积题目描述代码与解题思路偷看大佬题解 结语 刷题前唠嗑 LeetCode? 启动!!! 题目:最大单词长度乘积 题目链接:318. 最大单词长度乘积 题目描述 代码与解题思路 不含公共字母的两个字符串的最大乘积,这要是一个个遍历求解,那得有多暴力啊,我选择直接开摆。。。偷看一眼题解看看有什么好方法 偷看大佬题解 。。。 怎么全是位运算啊。。。这个月到处都是位运算要...

【LeetCode刷题-链表】--146.LRU缓存

146.LRU缓存 方法一:哈希表+双向链表 使用一个哈希表和一个双向链表维护所有在缓存中的键值对 双向链表按照被使用的顺序存储了这些键值对,靠近头部的键值对是最近使用的,而靠近尾部的键值对是最久使用的哈希表即为普通的哈希映射,通过缓存数据的键映射到其在双向链表中的位置 这样以来,我们首先使用哈希表进行定位,找出缓存项在双向链表中的位置,随后将其移动到双向链表的头部,即可在O(1)的时间内完成get或者...

LeetCode //C - 502. IPO

502. IPO Suppose LeetCode will start its IPO soon. In order to sell a good price of its shares to Venture Capital, LeetCode would like to work on some projects to increase its capital before the IPO. Sin...

aspnetcore微服务之间grpc通信,无proto文件

aspnetcore微服务之间通信grpc,一般服务对外接口用restful架构,HTTP请求,服务之间的通信grpc多走内网。以前写过一篇grpc和web前端之间的通讯,代码如下:exercisebook/grpc/grpc-web at main · liuzhixin405/exercisebook (github.com) 本次是微服务之间的通信使用了开源软件MagicOnion,该软件定义接...

【算法|动态规划No.28】leetcode1312. 让字符串成为回文串的最少插入次数

点击直接跳转到该题目 目录 1️⃣题目描述2️⃣题目解析3️⃣解题代码 1️⃣题目描述 给你一个字符串 s ,每一次操作你都可以在字符串的任意位置插入任意字符。 请你返回让 s 成为回文串的 最少操作次数 。 「回文串」是正读和反读都相同的字符串。 示例1: 示例2: 示例3: 注意: 1 <= s.length <= 500s 中所有字符都是小写字母。 2️⃣题目解析 状态表示: dp[i][j]:表...

【LeetCode刷题(数据结构与算法)】:将二叉搜索树转化为排序的双向链表

将一个 二叉搜索树 就地转化为一个 已排序的双向循环链表 对于双向循环列表,你可以将左右孩子指针作为双向循环链表的前驱和后继指针,第一个节点的前驱是最后一个节点,最后一个节点的后继是第一个节点 特别地,我们希望可以 就地 完成转换操作。当转化完成以后,树中节点的左指针需要指向前驱,树中节点的右指针需要指向后继。还需要返回链表中最小元素的指针 示例 1: 输入:root = [4,2,5,1,3] 输出:...

LeetCode 414. Third Maximum Number【数组】简单

给你一个非空数组,返回此数组中 第三大的数 。如果不存在,则返回数组中最大的数。 示例 1: 输入:[3, 2, 1]输出:1解释:第三大的数是 1 。 示例 2: 输入:[1, 2]输出:2解释:第三大的数不存在, 所以返回最大的数 2 。 示例 3: 输入:[2, 2, 3, 1]输出:1解释:注意,要求返回第三大的数,是指在所有不同数字中排第三大的数。此例中存在两个值为 2 的数,它...

【LeetCode:1402. 做菜顺序 | 动态规划 + 贪心】

🍔 目录 🚩 题目链接⛲ 题目描述🌟 求解思路&实现代码&运行结果⚡ 动态规划 + 贪心🥦 求解思路🥦 实现代码 - 缓存🥦 运行结果🥦 实现代码 - 动态规划🥦 运行结果 💬 共勉 🚩 题目链接 1402. 做菜顺序 ⛲ 题目描述 一个厨师收集了他 n 道菜的满意程度 satisfaction ,这个厨师做出每道菜的时间都是 1 单位时间。 一道菜的 「 like-time 系数 」定义为烹饪这道菜结...
© 2024 LMLPHP 关于我们 联系我们 友情链接 耗时0.004898(s)
2024-04-20 14:48:00 1713595680