小李的笔记本

小李的笔记本

山穷水复疑无路,柳暗花明又一村

LeetCode 进阶之路 - 字符串中的第一个唯一字符

LeetCode 进阶之路 - 字符串中的第一个唯一字符

给定一个字符串,找到它的第一个不重复的字符,并返回它的索引。如果不存在,则返回 -1。示例:s = "leetcode"返回 0s = "loveleetcode"返回 2提示:你可以假定该字符串只包含小写字母。public class FirstUnique

2020-09-09
562 0
LeetCode 进阶之路 - 两个数组的交集II

LeetCode 进阶之路 - 两个数组的交集II

给定两个数组,编写一个函数来计算它们的交集。示例 1:输入:nums1 = [1,2,2,1], nums2 = [2,2]输出:[2,2]示例 2:输入:nums1 = [4,9,5], nums2 = [9,4,9,8,4]输出:[4,9]说明:输出结果中每个元素出现的次数,应与元素在两个数组中

2020-09-09
579 0
LeetCode 进阶之路 - 反转字符串

LeetCode 进阶之路 - 反转字符串

编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 char[] 的形式给出。不要给另外的数组分配额外的空间,你必须原地修改输入数组、使用 O(1) 的额外空间解决这一问题。你可以假设数组中的所有字符都是 ASCII 码表中的可打印字符。示例 1:输入:["h",

2020-09-09
375 0
LeetCode 进阶之路 - 加一

LeetCode 进阶之路 - 加一

给定一个由整数组成的非空数组所表示的非负整数,在该数的基础上加一。最高位数字存放在数组的首位, 数组中每个元素只存储单个数字。你可以假设除了整数 0 之外,这个整数不会以零开头。示例 1:输入: [1,2,3]输出: [1,2,4]解释: 输入数组表示数字 123。示例 2:输入: [4,3,2,1

2020-09-09
558 0
LeetCode 进阶之路 - 最后一个单词的长度

LeetCode 进阶之路 - 最后一个单词的长度

给定一个仅包含大小写字母和空格' '的字符串 s,返回其最后一个单词的长度。如果字符串从左向右滚动显示,那么最后一个单词就是最后出现的单词。如果不存在最后一个单词,请返回 0。说明:一个单词是指仅由字母组成、不包含任何空格字符的 最大子字符串。示例:输入: "Hello World&quo

2020-09-09
578 0
LeetCode 进阶之路 - 搜索插入位置

LeetCode 进阶之路 - 搜索插入位置

给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。你可以假设数组中无重复元素。示例 1:输入: [1,3,5,6], 5输出: 2示例 2:输入: [1,3,5,6], 2输出: 1示例 3:输入: [1,3,5,6], 7输出:

2020-09-09
359 0
LeetCode 进阶之路 - 实现 strStr()

LeetCode 进阶之路 - 实现 strStr()

实现strStr()函数。给定一个haystack字符串和一个needle字符串,在haystack字符串中找出needle字符串出现的第一个位置(从0开始)。如果不存在,则返回-1。示例1:输入:haystack="hello",needle="ll"输出:

2020-09-09
542 0
LeetCode 进阶之路 - 移除元素

LeetCode 进阶之路 - 移除元素

给你一个数组 nums 和一个值 val,你需要 原地 移除所有数值等于 val 的元素,并返回移除后数组的新长度。不要使用额外的数组空间,你必须仅使用 O(1) 额外空间并 原地 修改输入数组。元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。 示例 1:给定 nums = [3,2,2

2020-09-03
574 0
LeetCode 进阶之路 - 删除排序数组中的重复项

LeetCode 进阶之路 - 删除排序数组中的重复项

给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。不要使用额外的数组空间,你必须在原地修改输入数组并在使用O(1)额外空间的条件下完成。 示例 1:给定数组nums=[1,1,2],函数应该返回新的长度2,并且原数组nums的前两个元素被修改为1,2。

2020-09-03
372 0