![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
力扣
文章平均质量分 58
梦见她
聚焦音视频,打怪升级中!
展开
-
【无标题】
因此,这行代码的目的是决定是应该将当前元素单独作为一个新的子数组起始点(即 nums[i]),还是应该将当前元素添加到之前的最大子数组中(即 current_max + nums[i])。我们比较 max_so_far 和更新后的 current_max,并将 max_so_far 更新为两者中较大的值。这个循环的工作原理是,它遍历数组的每个元素,并在每一步都决定是应该开始一个新的子数组还是继续当前的子数组,以最大化子数组的和。这段代码是 Kadane 算法的核心,用于计算一个整数数组中的最大子数组和。原创 2024-05-31 22:27:14 · 359 阅读 · 0 评论 -
力扣:27. 移除元素
【代码】力扣:27. 移除元素。原创 2024-05-30 13:00:46 · 262 阅读 · 1 评论 -
力扣:219. 存在重复元素 II
给你一个整数数组 nums 和一个整数 k ,判断数组中是否存在两个 不同的索引 i 和 j ,满足 nums[i] == nums[j] 且 abs(i - j) <= k。如果存在,返回 true;否则,返回 false。制造一个i-k-1的窗口,加入当前窗口位置的数组成员,超过窗口范围的删除,在此窗口中查找有无重复的数字,有则为真,无则为假。原创 2024-04-18 11:29:28 · 242 阅读 · 0 评论 -
【无标题】
给你一个整数数组 nums ,判断是否存在三元组 [nums[i], nums[j], nums[k]] 满足 i!= k ,同时还满足 nums[i] + nums[j] + nums[k] == 0。先排序,然后在用左和右位置的两个数相加,其值与最低位的比较。你返回所有和为 0 且不重复的三元组。注意:答案中不可以包含重复的三元组。原创 2024-04-18 10:33:30 · 145 阅读 · 0 评论 -
力扣:120. 三角形最小路径和
再计算的为f[1] = min(f[0],f[1]) + triangle[2][1] ,存储为f[1]其首先计算的为f[1] = f[0] + triangle[1][1] ,存储为f[1]其首先计算的为f[2] =f[1] + triangle[2][2] ,存储为f[2]再计算f[0] = f[0] + triangle[1][0],存储为f[0]再计算f[0] = f[0] + triangle[2][0],存储为f[0]给定一个三角形 triangle ,找出自顶向下的最小路径和。原创 2024-04-17 18:16:38 · 409 阅读 · 0 评论 -
力扣:LCR 022. 环形链表 II
力扣:LCR 022. 环形链表 II给定一个链表,返回链表开始入环的第一个节点。从链表的头节点开始沿着 next 指针进入环的第一个节点为环的入口节点。如果链表无环,则返回 null。为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。如果 pos 是 -1,则在该链表中没有环。注意,pos 仅仅是用于标识环的情况,并不会作为参数传递到函数中。原创 2024-04-17 11:25:32 · 286 阅读 · 0 评论 -
力扣:141. 环形链表
如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。如果其中存在环,则会产生快慢指针一直在环中循环的情况,也即为head->next一直无法到达终点,如果 一个慢指针一次走一步,一个快指针一次走两步,则快慢指针,会有在环中相遇的情况发生,也即为二者相遇,即为有环,二者不相遇,即为无环。哈希表具有记录的特性,可以将走过的点都记录在哈希表中,如果再次访问时,遇到哈希表中存在的之前访问过的点,则可以认为出现了环。给你一个链表的头节点 head ,判断链表中是否有环。原创 2024-04-17 00:31:07 · 219 阅读 · 0 评论 -
华为机考:HJ107 求解立方根
【代码】华为机考:HJ107 求解立方根。原创 2024-03-11 21:13:00 · 556 阅读 · 0 评论 -
华为机考:HJ2 计算某字符出现次数
描述写出一个程序,接受一个由字母、数字和空格组成的字符串,和一个字符,然后输出输入字符串中该字符的出现次数。(不区分大小写字母)数据范围:1≤�≤10001≤n≤1000输入描述:第一行输入一个由字母、数字和空格组成的字符串,第二行输入一个字符(保证该字符不为空格)。输出描述:输出输入字符串中含有该字符的个数。(不区分大小写字母)示例1输入:ABCabcA输出:2。原创 2024-03-11 20:59:17 · 785 阅读 · 0 评论 -
华为机考:HJ53 杨辉三角的变形
以上三角形的数阵,第一行只有一个数1,以下每行的每个数,是恰好是它上面的数、左上角数和右上角的数,3个数之和(如果不存在某个数,认为该数就是0)。求第n行第一个偶数出现的位置。如果没有偶数,则输出-1。例如输入3,则输出2,输入4则输出3,输入2则输出-1。数据范围:1≤�≤1091≤n≤109输入描述:输入一个int整数输出描述:输出返回的int值示例1输入:4复制输出:3。原创 2024-03-11 20:48:24 · 528 阅读 · 0 评论 -
力扣:118. 杨辉三角
给定一个非负整数 numRows,生成「杨辉三角」的前 numRows 行。在「杨辉三角」中,每个数是它左上方和右上方的数的和。原创 2024-03-11 20:25:36 · 424 阅读 · 0 评论 -
力扣:17. 电话号码的字母组合
题目中的“23”,对应为“abc”,“def”,按下2和3时,能出现的选择,只有“a”,“b”,"c"和“d”,“e”,“f”,然而按下第一个数字2,“a”,“b”,"c"不能互相排列,再次按下数字3,“d”,“e”,“f”可以和前面的“a”,“b”,"c"互相组合,组合的可能就为[“ad”,“ae”,“af”,“bd”,“be”,“bf”,“cd”,“ce”,“cf”]输出:[“ad”,“ae”,“af”,“bd”,“be”,“bf”,“cd”,“ce”,“cf”]输出:[“a”,“b”,“c”]原创 2024-03-08 17:44:11 · 429 阅读 · 0 评论 -
力扣:125. 验证回文串
第一种是使用语言中的字符串翻转 API 得到 sgood\textit{sgood}sgood 的逆序字符串 sgood_rev\textit{sgood_rev}sgood_rev,只要这两个字符串相同,那么 sgood\textit{sgood}sgood 就是回文串。最简单的方法是对字符串 sss 进行一次遍历,并将其中的字母和数字字符进行保留,放在另一个字符串 sgood\textit{sgood}sgood 中。解释:在移除非字母数字字符之后,s 是一个空字符串 “”。输入:s = " "原创 2024-03-01 11:32:36 · 453 阅读 · 0 评论 -
力扣:35. 搜索插入位置
因此,严格小于 target 的元素一定不是解,在循环体中将左右边界 left 和 right 逐渐向中间靠拢,最后 left 和 right 相遇,则找到了插入元素的位置。提供的思路是「排除法」,思路是:在循环的过程中,不断排除不需要的解,最后剩下的那个元素的位置就一定是插入元素的位置。时间复杂度:O(logn)O(\log n)O(logn),其中 nnn 为数组的长度。否则,根据示例和暴力解法的分析,插入的位置是大于等于 target 的第 1 个元素的位置。空间复杂度:O(1)O(1)O(1)。原创 2024-02-29 21:20:24 · 1016 阅读 · 1 评论 -
力扣:9. 回文数
给你一个整数 x ,如果 x 是一个回文整数,返回 true;否则,返回 false。解释:从左向右读, 为 -121。从右向左读, 为 121-。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。反转后的数字与原来的数字进行比较,相等则为回文数,否则不是。解释:从右向左读, 为 01。因为高位不能为0,所以个位是0的数不是回文数,0除外。时间复杂度:O(logn),每次循环输入除以10。例如,121 是回文,而 123 不是。输入:x = -121。输入:x = 121。原创 2024-02-29 20:04:03 · 627 阅读 · 0 评论