
Leetcode___hash
Kobe Forever
自信乐观,善待他人,善待自己!
展开
-
leetcode[438] 找到字符串中所有字母异位词
题目:给定一个字符串 s 和一个非空字符串 p,找到 s 中所有是 p 的字母异位词的子串,返回这些子串的起始索引。 思路:类似最小覆盖子串,利用双指针+滑动窗口的思想,区别是这里内层while循环条件(match数等于needs大小)及判断是结果索引的条件(right-left等于p的大小)。 代码: class Solution { public: vector<int&...原创 2020-04-21 19:11:59 · 201 阅读 · 0 评论 -
leetcode[76] 最小覆盖子串
题目:给你一个字符串 S、一个字符串 T,请在字符串 S 里面找出:包含 T 所有字母的最小子串。 实例 输入: S = "ADOBECODEBANC", T = "ABC" 输出: "BANC" 思路:巧妙利用两个指针,操作滑动窗口的范围。 外层循环:当滑动窗口不包含T中字符时,右移right指针,使得当前滑动窗口包含T中的字符。循环结束条件:right指针指向s字符串范围 内层循环:...原创 2020-04-21 17:58:50 · 198 阅读 · 0 评论 -
leetcode[387]First Unique Character in a String
问题:给定一个字符串,找到它的第一个不重复的字符,并返回它的索引。 输入:一个字符串(仅包含英文小写字母) 输出:第一个不重复的字符索引(不存在则返回-1) 思路: 遍历一遍字符串,利用hash表存储,每个字符为key时,value加1。 然后,正序遍历一遍字符串,如果value为1,则返回其索引。 (或者,遍历一遍hash表,如下第一个代码,判断是否为不重复的数字,比较得到最小的索...原创 2020-02-11 18:28:30 · 146 阅读 · 0 评论 -
leetcode[1]Two Sum
问题:找两个数字之和等于 输入:vector<int> nums,target 输出:vector<int> ls //两个数字的下标 思路: 暴力O(n^2) hashtable class Solution { public: vector<int> twoSum(vector<int>& nums, in...原创 2019-02-28 17:20:14 · 95 阅读 · 0 评论