Leetcode力扣 1-300题视频讲解合集|手画图解版+代码【持续更新ing】
北有扶苏:
有人相爱,有人夜里开车看海,有人leetcode第一题都做不出来。[tv_鬼脸]
【回复】等我跳槽了,用你这句话发个朋友圈[OK]
【回复】https://www.bilibili.com/read/cv18969160
一只寂寞痴汉:
趁着集数少赶紧看 要不等300题录完了就看不下去了
【回复】求赞,看到个谷歌和阿里大佬的Leetcode刷题笔记,笔记共 1200 页,都在这里:https://pan.baidu.com/s/17A21Msw4GmaEQgfJvvNngA
提取码:6688
【回复】哈哈哈哈录完估计还有一段时间哈哈哈哈
【回复】回复 @爱草莓的菇娘 :太感谢您了!!![打call]
爱学习的饲养员:
收藏比点赞还多[捂眼][捂眼],大家收藏的同时,麻烦记得点赞,你的点赞能让更多人看到这个视频,看的人多了,我能更加的有动力,感谢[跪了][跪了][跪了]
【回复】悄悄的努力,然后惊艳所有人。哈哈
【回复】回复 @haha365823 :哈哈哈 可真行
郑宇宙呀:
兄弟们,知道小姐姐的背景为啥一直是黑色的嘛?因为light attracts bugs!!!!
【回复】这个居然有点好笑!!!
【回复】作为萌新猿的我居然没看懂 专门百度了下 果然人间真实了[妙啊]
【回复】英语不好我都get不到这个好笑在哪,百度一下才知道,hhh
bili_44111251998:
private static HashMap<Character,Character> map = new HashMap<>();
// 通过静态代码块对map进行初始化
static {
map.put('(',')');
map.put('{','}');
map.put('【','】');
}
public boolean isValid13(String s) {
// 1.创建Stack对象
Stack<Character> stack = new Stack<>();
// 2.循环遍历字符串s
for (int i = 0; i < s.length(); i++) {
// 获取到字符串中的每一个字符
char c = s.charAt(i);
// 判断:如果map集合当中 c,也就是包含 { ( [ ,就存储到stack中
if (map.containsKey(c)) {
stack.push(c);
} else {
// 说明是右括号 ( { [
// 首先,我先判断栈是不是空的,如果是空的,说明栈中没有左括号,那么右括号也就没有匹配的
if (stack.isEmpty()) return false;
// 然后在判断右括号 c 是否等于map中的值,如果不等于就不匹配
Character temp = stack.pop();
if (c != map.get(temp)) return false;
}
}
return stack.isEmpty();
}
Back_tracking:
每次看力扣文字题解看不懂的时候都会来这里找找有没有对应的题,up讲得真的很好哎
【回复】这个就应该这么用!我会加油多更新的!
【回复】回复 @爱学习的饲养员 :顺便一提up是根据啥顺序更新的题解呢?要不要尝试根据面试高频题目来更新?有人统计过bat美团这些面试题目出现的频度,一直在更新,我感觉up要不要按照这个讲哎[脱单doge]
【回复】回复 @莫得感情-空链表 :纠正一下,是codetop不是codetap哦
-小亮同学-:
[辣眼睛]好家伙 我的每次第一想法都是暴力解法
【回复】暴力算总是好的[doge]算出个答案再看看怎么去优化
真的是Kris:
听你的声音入迷了,听不进题咋整[脸红] ‘
【回复】下次我买个恐龙变声器哈哈
是舟舟子诶:
同问 第一题Hash的话,key值不能相同 第一次循环创建字典的话,如果key相同的话会覆盖 那样就丢元素了。然鹅但是……我通过了。。。。
【回复】回复 @Vsion是大哥 :我大概知道是怎么通过的了,说一下我的理解:
如果有一个列表是【1, 2, 2, 4】 target=4那么
'''python
for i in range(len(nums)):
HashTable[nums【i】] = i
'''
就会得到哈希表{1: 0, 2: 2, 4: 3}。
哈希表的key为2,value为1之后被下一个key为2,value为2覆盖了。
区分一下第一个2记为2_1,第二个2记为2_2
当2_1去匹配哈希表只会得到2_2,因为第一个被覆盖了,此时索引不同。此时已返回,所以不影响。
假设会从2_2去匹配的话,匹配到哈希表的2_2时,因为判断语句
if (diff in HashTable) and (HashTable【diff】 != j )
的存在所以不允许返回索引相同的两个数值,所以并不影响。
上面的假设是方便理解,从左往右遍历的话,第一个数与后面覆盖数以及匹配成功并返回了,所以不存在这个问题,除非搞事情从右往左匹配那就回没有返回值。
我就是觉得覆盖了不太好,所以搞不懂,现在可以接收了。[星星眼][星星眼]
【回复】只要判断了value不与for循环中的索引值相同的话,就算覆盖也总有一个key- value保留在里边,for循环总能够找到一个
【回复】回复 @是舟舟子诶 :我理解如果遍历的是数组,其实没有这个问题,因为数组的数据没有被去重压缩且有下标不重复的判断条件。如果遍历的是hashtable会有问题
太阳好少年:
请坚持下去,做题靠你了(´。・v・。`)
【回复】回复 @爱学习的饲养员 :up好厉害ヾ(Ő∀Ő๑)ノ太好惹
恋爱暴走机車:
作为刚开始学习的新生真的是受益匪浅[微笑]
小黄鱼翻身:
有人相爱,有人夜里看海,有人LeetCode第一题写不出来[大哭][大哭]
【回复】有人给你评论,这个多温暖