
LeetCode
沉睡大陆66
这个作者很懒,什么都没留下…
展开
-
从0开始刷力扣-58.最后一个单词长度
看到的时候就想到很笨的方法,就是利用一个计数器,遍历每一个字符,不为空格计数器++,为空的时候计数器归0,在遍历下一个字符之前,先判断计数器是否为空,如果不为空就设置返回值为当前计数器的值,这样可以防止字符串最后有空格导致的返回为0;然后看了题解发现,诶,可以反向遍历,这就可以非常快的拿到最后一个单词了。原创 2025-01-07 14:29:19 · 283 阅读 · 0 评论 -
从0开始刷力扣-35.搜索插入位置
要求O(logn)的时间复杂度,咱们可以用二分查找,设定一个初始为0的左指针,length-1的右指针,然后不断比较指针中间值对应数值与target的大小关系,知道找到target比配数组位置,或者左指针在右指针右边返回索引失败。原创 2025-01-07 14:12:29 · 177 阅读 · 0 评论 -
从0开始刷力扣-27.移除元素
然后构造两个指针l,r,利用循环不断使得r往后遍历,如果r所匹配数组的值不等于val,就可以给l所在位置赋值,然后l后移,知道r与数组长度相等退出循环。当然需要排除数组为空的特殊情况。我的第一想法是先给数组排个序,原创 2025-01-04 19:35:01 · 180 阅读 · 0 评论 -
从0开始刷力扣-26.删除有序数组中的重复项
题目给定的已经是有序数组,那么我们只需要利用两个指针l和r,l负责记录不重复的元素,r往后遍历,遇到重复的继续往后,不重复的时候把值赋给l指针指向位置,l++,当然,还要考虑nums为空的特殊情况。原创 2025-01-04 19:18:18 · 152 阅读 · 0 评论 -
从0开始刷力扣-21.合并两个有序列表
21.合并两个有序列表原创 2025-01-04 17:53:55 · 103 阅读 · 0 评论 -
从0开始刷力扣-20.有效的括号
20.有效的括号原创 2025-01-02 15:33:45 · 175 阅读 · 0 评论 -
从0开始刷力扣-14.最长公共前缀
然后发现可以在此基础上再优化,比如当某一次最长公共子字符串为空时直接返回空,不用继续遍历。然后看了题解发现我们的解法就是所谓的横向,除此之外还有纵向分治思想和二分查找。原创 2025-01-01 14:39:56 · 291 阅读 · 0 评论 -
从0开始刷力扣-9. 回文数
但是这样呢-121也变成了回文数,所以我又在前面加上验证x正负的语句,但我觉得这个解法不太行,于是去看了题解,思想很巧妙:先去除开头为0,以及负数这样的临界值,然后把后半数字逆转来看和前半部分一不一致。原创 2024-12-28 21:00:01 · 348 阅读 · 0 评论 -
从0开始刷力扣-13.罗马数字转整数
13.罗马数字转整数原创 2024-12-29 10:46:01 · 183 阅读 · 0 评论 -
从0开始刷力扣-1. 两数之和
1. 两数之和原创 2024-12-28 20:40:51 · 169 阅读 · 0 评论