- 博客(18)
- 收藏
- 关注
原创 leetcode简单题/017 合并两个有序数组
输入:nums1 = [1,2,3,0,0,0], m = 3, nums2 = [2,5,6], n = 3。- 合并结果是 [1,2,2,3,5,6] ,其中斜体加粗标注的为 nums1 中的元素。- 输入:nums1 = [0], m = 0, nums2 = [1], n = 1。- 输入:nums1 = [1], m = 1, nums2 = [], n = 0。- 解释:需要合并 [1,2,3] 和 [2,5,6]。- 输出:[1,2,2,3,5,6]- 合并结果是 [1]。
2026-03-24 14:58:39
180
原创 leetcode简单题/016 删除排序链表中的重复元素
给定一个已排序的链表的头 head , 删除所有重复的元素,使每个元素只出现一次。- 定义curr指针,初始指向头节点head,用于遍历链表,- 输入:head = [1,1,2,3,3]- 链表中节点数目在范围 [0, 300] 内。- 如果相邻元素相同,指针指向下下个元素;- 如果相邻元素不同,指针指向下个元素。- 输入:head = [1,1,2]# 016 删除排序链表中的重复元素。- 题目数据保证链表已经按升序 排列。- 输出:[1,2,3]- 最后返回head。- 输出:[1,2]
2026-03-24 14:58:28
9
原创 leetcode简单题/015 爬楼梯
从第三阶开始循环,计算出第i阶的次数,i-2阶的次数=当前i-1阶的次数,i-1阶的次数=当前i阶的次数,继续循环;- 从最后开始计算,第i阶所需的次数=第i-1阶走1步+第i-2阶走2步。每次你可以爬 1 或 2 个台阶。- 1. 1 阶 + 1 阶 + 1 阶。- 走2阶有两种方法,走一阶有一种方法。- 解释:有两种方法可以爬到楼顶。- 解释:有三种方法可以爬到楼顶。- 1. 1 阶 + 1 阶。- 2. 1 阶 + 2 阶。- 3. 2 阶 + 1 阶。- 最后返回当前i阶的次数。
2026-03-09 14:33:28
11
原创 leetcode简单题/014 x的平方根
注意:不允许使用任何内置指数函数和算符,例如 pow(x, 0.5) 或者 x ** 0.5。- 如果mid*mid<=x,将左边界变为mid+1,取所需s=mid,并寻找更大的s;- 解释:8 的算术平方根是 2.82842..., 由于返回类型是整数,小数部分将被舍去。- 如果mid*mid>x,将右边界变为mid-1,寻找满足条件的mid。- 取左边界left为1,右边界right为x,中间值mid,给你一个非负整数 x ,计算并返回 x 的 算术平方根。- 输入:x = 8。
2026-03-09 14:33:17
13
原创 leetcode简单题/013 二进制求和
给你两个二进制字符串 a 和 b ,以二进制字符串的形式返回它们的和。注意点:逐位相加,用while循环,保证两个字符计算位置相同。- 输入:a = "1010", b = "1011"- a 和 b 仅由字符 '0' 或 '1' 组成。- s/2作为新的进位值参与下一次进位的计算。- 输入:a = "11", b = "1"- 字符串如果不是 "0" ,就不含前导零。- s%2作为当前值插入新字符串最前面;- 从后往前逐位相加,用s保存进位,- 输出:"10101"- 输出:"100"
2026-03-08 16:10:42
8
原创 leetcode简单题/012 加一
给定一个表示 大整数 的整数数组 digits,其中 digits[i] 是整数的第 i 位数字。注意点:若数组为[9],需建立一个新数组,使其长度加一,使新数组digits2[0]=1,进行之前的循环,最后返回新数组。- 数字不为9时,digits[i]++,并返回digits。- 输入:digits = [4,3,2,1]- 输入:digits = [1,2,3]- 因此,结果应该是 [4,3,2,2]。- 因此,结果应该是 [1,2,4]。- 输出:[4,3,2,2]- 输出:[1,2,4]
2026-03-08 16:10:32
24
原创 leetcode简单题/011 最后一个单词的长度
因为要求最后一个单词的长度,所以从后往前遍历字符串,当遇到非空格的字符时计数,遇到空格时break退出循环,最后返回n。给你一个字符串 s,由若干单词组成,单词前后用一些空格字符隔开。注意点:break退出循环时要保证n>0,避免字符串最后一个字符时空格导致开始便退出循环。- 解释:最后一个单词是长度为 6 的“joyboy”。- 解释:最后一个单词是“World”,长度为 5。- 解释:最后一个单词是“moon”,长度为 4。- 输入:s = "Hello World"- s 中至少存在一个单词。
2026-03-07 15:56:49
10
原创 leetcode简单题/010 搜索插入位置
给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。取n = 0,遍历整个数组,当nums[i]<target时,n++,最后跳出循环返回n。- 输入: nums = [1,3,5,6], target = 5。- 输入: nums = [1,3,5,6], target = 2。- 输入: nums = [1,3,5,6], target = 7。- nums 为 无重复元素 的 升序 排列数组。# 010 搜索插入位置。
2026-03-07 15:56:35
12
原创 leetcode简单题/009 找出字符串中第一个匹配项的下标
给你两个字符串 haystack 和 needle ,请你在 haystack 字符串中找出 needle 字符串的第一个匹配项的下标(下标从 0 开始)。- 输入:haystack = "leetcode", needle = "leeto"- 输入:haystack = "sadbutsad", needle = "sad"- 解释:"leeto" 没有在 "leetcode" 中出现,所以返回 -1。- 解释:"sad" 在下标 0 和 6 处匹配。- 第一个匹配项的下标是 0 ,所以返回 0。
2026-03-06 13:13:02
26
原创 leetcode简单题/008 移除元素
更改 nums 数组,使 nums 的前 k 个元素包含不等于 val 的元素。- 解释:你的函数应该返回 k = 5,并且 nums 中的前五个元素为 0,0,1,3,4。- 解释:你的函数应该返回 k = 2, 并且 nums 中的前两个元素均为 2。- 输入:nums = [0,1,2,2,3,0,4,2], val = 2。- 输出:5, nums = [0,1,4,0,3,_,_,_]- 输入:nums = [3,2,2,3], val = 3。- 输出:2, nums = [2,2,_,_]
2026-03-06 13:12:49
170
原创 leetcode简单题/007 删除有序数组中的重复项
注意项:题目定义的方法签名是:public int removeDuplicates(int[] nums),返回值类型是int,所以要返回n,结果显示是[1,2,...]是系统工作后的结果展示。- 解释:函数应该返回新的长度 5 , 并且原数组 nums 的前五个元素被修改为 0, 1, 2, 3, 4。- 输出:5, nums = [0,1,2,3,4,_,_,_,_,_]- 输入:nums = [0,0,1,1,1,2,2,3,3,4]- 输出:2, nums = [1,2,_]
2026-03-05 21:39:15
34
原创 leetcode简单题/006 合并两个有序链表
用 curr 指针跟踪新链表的末尾,遍历两个链表,每次将值较小的节点拼接到 curr 后面,并移动对应指针;核心原则:利用指针迭代处理有序链表的合并,每次取较小值节点拼接,直到其中一个链表遍历完,再拼接剩余节点。- 当其中一个链表遍历完,将另一个链表的剩余节点直接拼接到新链表末尾;- 输入:l1 = [1,2,4], l2 = [1,3,4]- 输入:l1 = [], l2 = [0]- 输入:l1 = [], l2 = []- 输出:[1,1,2,3,4,4]# 006 合并两个有序链表。
2026-03-05 21:39:05
12
原创 leetcode简单题/005 有效的括号
给定一个只包括 '(',')','{','}','[',']' 的字符串 s ,判断字符串是否有效。- 遇到左括号((/[/{)时,将其压入栈中,等待后续匹配;- 若栈为空(无左括号可匹配)或类型不匹配,返回false;- 遍历结束后,若栈为空,所有左括号都已匹配,返回true;- 每个右括号都有一个对应的相同类型的左括号。- s 仅由括号 '()[]{}' 组成。- 左括号必须用相同类型的右括号闭合。- 输入:s = "()[]{}"- 输入:s = "([])"- 输入:s = "([)]"
2026-03-03 13:43:04
245
原创 leetcode简单题/004 最长公共前缀
核心原则:以第一个字符串为基础公共前缀,遍历后面的字符串每一个字符位置j,对于每个位置 j,检查数组中所有其他字符串在该位置的字符是否与基准字符相同,当j大于字符串长度或者字符串j不同时返回前j-1个字符。- 输入:strs = ["flower","flow","flight"]- 输入:strs = ["dog","racecar","car"]若if未执行,则全部字符都匹配,第一个字符串本身就是最长公共前缀。如果不存在公共前缀,返回空字符串 ""。- 解释:输入不存在公共前缀。
2026-03-03 13:42:52
167
原创 leetcode简单题/003 罗马数字转整数
数字 1 在数字 5 的左边,所表示的数等于大数 5 减小数 1 得到的数值 4。- C 可以放在 D (500) 和 M (1000) 的左边,来表示 400 和 900。- s 仅含字符 ('I', 'V', 'X', 'L', 'C', 'D', 'M')- X 可以放在 L (50) 和 C (100) 的左边,来表示 40 和 90。- I 可以放在 V (5) 和 X (10) 的左边,来表示 4 和 9。罗马数字包含以下七种字符: I, V, X, L,C,D 和 M。
2026-03-02 16:13:40
262
原创 leetcode简单题/002 回文数
解释:从左向右读, 为 -121。从右向左读, 为 121-。- 若相等,i++ ,然后继续循环,直到i=s.length()-1。- 特殊情况处理:负数和末尾为 0 的非零数,直接返回 false。- 解释:从右向左读, 为 01。- ·例如,121 是回文,而 123 不是。- 初始化指针0和s.length()-1。- 若不相等,直接返回 false。- O(n),需额外存储字符串。- 将整数 x 转换为字符串 s。- O(n),n为整数位数。- 输入:x = -121。
2026-03-02 16:13:26
175
原创 leetcode简单题/001两数之和
给定一个整数数组 `nums` 和一个目标值 `target`,请你在数组中找出**和为目标值**的两个整数,并返回它们的数组下标。- 解释:因为 nums[0] + nums[1] == 9 ,返回 [0, 1]。- 输入:nums = [2,7,11,15], target = 9。- 输入:nums = [3,2,4], target = 6。- 输入:nums = [3,3], target = 6。- 空间复杂度:O(1)- 输出:[0,1]- 输出:[1,2]- 输出:[0,1]
2026-03-01 14:30:36
209
原创 MATLAB常见问题解决指南
二进制文件跨版本(如MATLAB R2016b与R2023a)读写技巧。符号计算(Symbolic Math)导致速度骤降的替代方案。Python与MATLAB混合编程的接口错误排查。MATLAB Online与本地版的功能差异对照。列出MATLAB与常见工具箱的最低支持版本对照表。不同操作系统换行符(CR/LF)的兼容性设置。MEX文件编译失败(如缺少编译器)的解决方案。逻辑错误(如数值计算精度问题)的定位方法。性能分析器(Profiler)的实战应用。并行计算与GPU加速的配置方法。
2026-03-01 14:29:14
113
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅