ARTS 第五周 6.21-6.28

发布于: 18 小时前

Algorithm

力扣139. 单词拆分

我实在是个菜鸡,没有巧妙的想法来解此题,此处附上光头哥的4行极简代码,膜拜

class Solution:
def wordBreak(self, s, words):
ok = [True]
for i in range(1, len(s)+1):
ok += any(ok[j] and s[j:i] in words for j in range(i)),
return ok[-1]

Review

Unit Testing and Logging for Data Science

此文展示了Python语言中做单元测试以及日志的方法,即:在我们实现想要的功能时,依靠@func来调用实现定义好的辅助函数。之前我没有接触过这一点,让我感觉特别神奇,并且单元测试和日志是非常重要的部分,此文为我介绍了这一点。

Tips

1.在力扣做题过程中,发现如下两种定义二维数组的方式是不同的,我们对行操作时,第一种定义会将更改的行更新到其余所有行,而后一种方式可以正常修改元素。

res = [[1]*n]*m
res = [[1]*n for zong in range(m)]

2.此点来自光头哥。没想到逗号竟然有这么神奇哈哈哈哈,省时简洁,学到了

>>> from timeit import timeit
>>> timeit('x.append(1)', 'x = []', number=10000000)
1.9880003412529277
>>> timeit('x += 1,', 'x = []', number=10000000)
1.2676891852971721
>>> timeit('x += [1]', 'x = []', number=10000000)
3.361207239950204

Share

98 | 高效学习:深度,归纳和坚持实践

正如题目所说,高效学习要系统性的深入,这一点上耗子叔分享了自己的技术学习模板,即:某技术为何存在、优缺点、适用场景、与现有技术对比、关键组成与技术、底层原理与实现。如果可以如此高水平的学习,进步必然飞快。

学习其实是一件不能勉强的事,需要你有强烈的好奇心和韧性,同时你还需要做好多事情,比如经常归纳总结,比如长期地持续下去。每个人的学习有一个拐点,即:学会学习;但无论之前或之后,需要成为一名长期主义者。

文中有一个金句,我很喜欢:“实践是很累很痛苦的事,但只有痛苦才会让人反思。”

长期主义者,一起共勉!

用户头像

我笔盒呢

关注

还未添加个人签名 2019.01.07 加入

还未添加个人简介

评论

发布
暂无评论
ARTS 第五周 6.21-6.28