Open GeekUniversity opened 5 years ago
学号:000 username:GeekUniversity 代码作业:https://github.com/GeekUniversity/assignment01/blob/master/helloworld.py 学习总结:https://github.com/algorithm003/algorithm/issues/2 使用语言:Python
作业提交
学号:000 username:GeekUniversity 代码作业:https://github.com/GeekUniversity/assignment01/blob/master/helloworld.py 学习总结:#2 使用语言:Python
(通过Quote reply,在这里写下你对某位同学代码作业或学习总结的点评)
学号:037 username:孙勇猛 代码作业:https://github.com/symerSun/algorithm/tree/master/Week_01/id_37 学习总结:#5 使用语言:JAVA
学号:035 username:苏华兵 代码作业:https://github.com/suhuabing/algorithm/tree/master/Week_01/id_35 学习总结:#8 使用语言:JAVA
作业提交
学号:035 username:苏华兵 代码作业:https://github.com/suhuabing/algorithm/tree/master/Week_01/id_35 学习总结:#8 使用语言:JAVA
对于对称2叉树(leetCode 101)
if判断可缩进为一行,
if(left == null && right == null) return true; else if(left == null || right == null) return false;
另外对于如果当前节点值不相同直接返回false即可,否则,直接双层下探;
return left.val != right.val ? false:isSame(left.left,right.right) && isSame(left.right,right.left);
思路其实是相同的.只是还有表达方式不同;
ps:没有同学提交作业,只能先挑一个开刀了;
作业提交
学号:037 username:孙勇猛 代码作业:https://github.com/symerSun/algorithm/tree/master/Week_01/id_37 学习总结:#5 使用语言:JAVA
1、 LeetCode_104_37,else这个代码可以去除,因为如果root == null就已经返回了。减少代码量 2、 LeetCode_441_37,可以使用二分查询,降低时间复杂度。因为结果是一定要符合阶梯层级并且消耗总数在n范围内。所以,利用二分查找,如果最终的中间那个数的消耗总数等于n,那就直接返回中间的那个数即可。如果不是,那就继续二分查找,到时 最后一个中间数时,如果还是没有等于的,那我们就取左边后退一位的那个数。
学号:024 username:HelloThisWorld 代码作业:https://github.com/HelloThisWorld/algorithm/tree/master/Week_01/id_24 学习总结:#14 使用语言:Java
学号:040 username:libinyl 代码作业:https://github.com/libinyl/algorithm/tree/master/Week_01/id_40 学习总结:#18 使用语言:Python
学号:033 username:杨帆 代码作业:https://github.com/yyyyfan/algorithm/tree/master/Week_01/id_33 学习总结:#20 使用语言:Go
作业提交
学号:037 username:孙勇猛 代码作业:https://github.com/symerSun/algorithm/tree/master/Week_01/id_37 学习总结:#5 使用语言:JAVA
二叉搜索树缺少第三个条件, 它的左、右子树也分别为二叉搜索树
作业提交
学号:035 username:苏华兵 代码作业:https://github.com/suhuabing/algorithm/tree/master/Week_01/id_35 学习总结:#8 使用语言:JAVA
针对Week_01/id_35/LeetCode_49_035.java中代码
List<String> list = map.get(String.valueOf(sortArray));
if (list == null) {
list = new ArrayList<String>();
}
list.add(strs[i]);
map.put(String.valueOf(sortArray), list);
可优化为
List<String> list = map.computeIfAbsent(String.valueOf(sortArray), item -> new ArrayList<String>());
list.add(strs[i]);
学号:030 username:吴穗智 代码作业:https://github.com/zhomgwu/algorithm/tree/master/Week_01/id_30 学习总结:#31 使用语言:CPP
学号:023 username:kkkkk0cool 代码作业:https://github.com/kkkkk0cool/algorithm/tree/master/Week_01/id_23 学习总结:#33 使用语言:c++
学号:032 用户名:scytlaimin 代码作业:https://github.com/scytlaimin/algorithm/tree/master/Week_01/id_32 学习总结:#34 使用语言:JAVA
学号:006 username:xsplus 代码作业:https://github.com/xsplus/algorithm/tree/master/Week_01/id_6 学习总结:#40 使用语言:Go
学号:05 username:陈巧婵 代码作业:https://github.com/katecqc/algorithm/tree/master/Week_01/id_5 学习总结:#35 使用语言:Javascript
#作业提交 学号:047 用户名:Peng282 代码作业:https://github.com/Peng282/algorithm/tree/master/Week_01/id_47 学习总结:#47 使用语言:JAVA
学号:042 username:winn 代码作业:https://github.com/wu360/algorithm-1/tree/master/Week_01/id_42 学习总结:#78 使用语言:Java
学号:012 username:pizhihui 代码作业:https://github.com/pizhihui/algorithm/tree/master/Week_01/id_12 学习总结:https://github.com/algorithm003/algorithm/issues/46 使用语言:Java
作业提交
学号:035 username:苏华兵 代码作业:https://github.com/suhuabing/algorithm/tree/master/Week_01/id_35 学习总结:#8 使用语言:JAVA
24 题的 Swap Nodes in Paris 的常规解法需要四个指针,绕来绕去,有点晕,不过可以考虑递归解法。还在研究中
作业提交
学号:000 username:HelloThisWorld 代码作业:https://github.com/HelloThisWorld/algorithm/tree/master/Week_01/id_24 学习总结:#14 使用语言:Java
Merge-Two-Sorted-Lists递归的解法不错呀,学习下新的思路,我都是用简历指针,各种穿针引线用的,有时候比较头晕
学号:05 username:陈巧婵 代码作业:https://github.com/katecqc/algorithm/tree/master/Week_01/id_5 学习总结:#35 使用语言:Javascript
js 代码好简洁,正在研究中。。。。
#作业提交 学号:032 用户名:scytlaimin 代码作业:https://github.com/scytlaimin/algorithm/tree/master/Week_01/id_32 学习总结:#32 使用语言:JAVA
sum of two 的解法,两个循环的 map 和一个循环的 map 还是有时间差别哦。效率还是差距很大,不过在理解方面还是相反的。HashMap 的解题思路在很多方面都有借鉴了。
作业提交
学号:035 username:苏华兵 代码作业:https://github.com/suhuabing/algorithm/tree/master/Week_01/id_35 学习总结:#8 使用语言:JAVA
merge sorted array 那道题,拷贝数组和排序都需要耗费时间,我这里的思路好像指针挪动可以弄。目前还没想到具体解法。
#作业提交 学号:032 用户名:scytlaimin 代码作业:https://github.com/scytlaimin/algorithm/tree/master/Week_01/id_32 学习总结:#32 使用语言:JAVA
1、LeetCode_1_32,第18行中的 index != i 这个条件是不需要的,因为i是递增的map中的value与i肯定是不一致的,并且,只要target - num[i]作为map的key获取值存在,就说明当前这个值肯定和map那个值两个相加是等于target了。
作业提交
学号:042 username:winn 代码作业:https://github.com/wu360/algorithm-1/tree/master/Week_01/id_42 学习总结: 使用语言:Java
1、Solution101,第40行中的else其实不用的,因为如果if满足就已经return了; 2、Solution111,第34开始,如果左子树为空,说明右子树不为空,那就直接return右子树直接下钻就好了,不需要再判断左右子树的最小深度了。如果右子树为空,说明左子树不为空,同理。能执行到最后的,说明左右子树都不为空,那才左右子树都下钻。
作业提交
学号:012 username:pizhihui 代码作业:https://github.com/pizhihui/algorithm/tree/master/Week_01/id_12 学习总结:#46 使用语言:Java
LeetCode.104.maximum-depth-of-binary-tree.java中17、18行可以直接合成一行,因为新的变量都没地方用了, return (leftMaxDepth > rightMaxDepth) ? leftMaxDepth + 1 : rightMaxDepth + 1;
学号:05 username:陈巧婵 代码作业:https://github.com/katecqc/algorithm/tree/master/Week_01/id_5 学习总结:#35 使用语言:Javascript
js写法挺好的,也够简洁,学习了!
学号:029 username:胡光耀 代码作业:https://github.com/hu5980/algorithm/tree/master/Week_01/id_29 使用语言:Swift
学号:002 username:OriginalCola 代码作业:https://github.com/OriginalCola/algorithm/tree/master/Week_01/id_2 学习总结:#55 使用语言:Python
作业提交
学号:023 username:kkkkk0cool 代码作业:https://github.com/kkkkk0cool/algorithm/tree/master/Week_01/id_23 学习总结:#33 使用语言:c++
LeetCode_101_23.cpp第 4 5 行可以去掉吧~
5
代码很简洁清晰,return和if-else的冗余去掉就更好了~
https://github.com/OriginalCola/algorithm/tree/master/Week_01/id_2
学号:05 username:陈巧婵 代码作业:https://github.com/katecqc/algorithm/tree/master/Week_01/id_5 学习总结:#35 使用语言:Javascript
好详细&漂亮的脑图!收藏了!
学号:027 username:李凌峰 代码作业:https://github.com/lemenlee/algorithm/tree/master/Week_01/id_27 学习总结:#56 使用语言:Python
作业提交
学号:000 username:HelloThisWorld 代码作业:https://github.com/HelloThisWorld/algorithm/tree/master/Week_01/id_24 学习总结:#14 使用语言:Java
我来吹毛求疵一下, tab 而不是空格,缩进真的影响观感呀!
https://github.com/hu5980/algorithm/tree/master/Week_01/id_29
崇拜你完成的作业量,总结的解决方法很多也全面,向你学习!! (PS:空格和空行的格式建议统一一下~)
学号:05 username:陈巧婵 代码作业:https://github.com/katecqc/algorithm/tree/master/Week_01/id_5 学习总结:#35 使用语言:Javascript
你的脑图总结的真的棒, 但是有个小缺点,代码里不写注释,有点影响阅读
学号:017 username:imchangchang 代码作业:https://github.com/imchangchang/algorithm/tree/master/Week_01/id_17 学习总结:https://github.com/algorithm003/algorithm/issues/57 使用语言:Python PR:https://github.com/algorithm003/algorithm/pull/58
作业提交
学号:002 username:OriginalCola 代码作业:https://github.com/OriginalCola/algorithm/tree/master/Week_01/id_2 学习总结:#55 使用语言:Python
作业的解题思路写的详细,并且分析了每个方法的时间、空间复杂度,这个点很值得我去学习
作业提交
学号:012 username:pizhihui 代码作业:https://github.com/pizhihui/algorithm/tree/master/Week_01/id_12 学习总结:#46 使用语言:Java
这道题貌似忘记上传了?看下哈~
作业提交
学号:017 username:imchangchang 代码作业:https://github.com/imchangchang/algorithm/tree/master/Week_01/id_17 学习总结:#57 使用语言:Python
提个小建议,代码不写注释是很影响别人阅读的,甚至一段时间后,自己阅读都需要花费更多的时间
https://github.com/KiLien/algorithm/tree/master/Week_01/id_1
题目都画了详细的推理过程,受教了~
https://github.com/OriginalCola/algorithm/tree/master/Week_01/id_2
- 感觉可以多多利用 python 的语法糖哈~~
- LeetCode_189_2.py这个好像没merge好冲突,可以看下哈
冲突是指哪里,不太懂
学号:051 username:cc1901 代码作业:https://github.com/algorithm003/algorithm/pull/60 学习总结:https://github.com/algorithm003/algorithm/issues/61 使用语言:Java
作业提交
学号:023 username:kkkkk0cool 代码作业:https://github.com/kkkkk0cool/algorithm/tree/master/Week_01/id_23 学习总结:#33 使用语言:c++
LeetCode_101_23.cpp第 4 5 行可以去掉吧~
不能去掉,如果去掉就会core了
学号:05 username:陈巧婵 代码作业:https://github.com/katecqc/algorithm/tree/master/Week_01/id_5 学习总结:#35 使用语言:Javascript
脑图很好,我借鉴来完善一下自己的脑图。
作业提交
学号:023 username:kkkkk0cool 代码作业:https://github.com/kkkkk0cool/algorithm/tree/master/Week_01/id_23 学习总结:#33 使用语言:c++
厉害了,这完成量
作业提交
学号:040 username:libinyl 代码作业:https://github.com/libinyl/algorithm/tree/master/Week_01/id_40 学习总结:#18 使用语言:Python
21题那,Solution2的代码能更简洁的
要求
注意事项
第一周题目
数组、链表
简单:https://leetcode-cn.com/problems/remove-duplicates-from-sorted-array/ 简单:https://leetcode-cn.com/problems/rotate-array/ 简单:https://leetcode-cn.com/problems/merge-two-sorted-lists/ 简单:https://leetcode-cn.com/problems/merge-sorted-array/ 中等:https://leetcode-cn.com/problems/swap-nodes-in-pairs/ 中等:https://leetcode-cn.com/problems/3sum/
Map & Set
简单:https://leetcode-cn.com/problems/valid-anagram/ 中等:https://leetcode-cn.com/problems/group-anagrams/
堆栈、队列
简单:https://leetcode-cn.com/problems/remove-all-adjacent-duplicates-in-string/ 简单:https://leetcode-cn.com/problems/remove-outermost-parentheses/ 困难:https://leetcode.com/problems/largest-rectangle-in-histogram/ 困难:https://leetcode.com/problems/trapping-rain-water/
二分查找
简单:https://leetcode-cn.com/problems/arranging-coins/ 中等:https://leetcode-cn.com/problems/powx-n/ 困难:https://leetcode-cn.com/problems/dungeon-game/
递归
简单:https://leetcode-cn.com/problems/maximum-depth-of-binary-tree/ 简单:https://leetcode-cn.com/problems/symmetric-tree/ 简单:https://leetcode-cn.com/problems/minimum-depth-of-binary-tree/ 简单:https://leetcode-cn.com/problems/minimum-distance-between-bst-nodes/ 简单:https://leetcode-cn.com/problems/binary-tree-paths/ 简单:https://leetcode-cn.com/problems/range-sum-of-bst/ 中等:https://leetcode-cn.com/problems/lowest-common-ancestor-of-a-binary-tree/
作业提交规则