每周至少做一个leetcode 的算法题
https://leetcode-cn.com/problems/merge-two-sorted-lists/
21. 合并两个有序链表
注意是有序的。怎么保证有序呢?
最直接的想法,循环遍历两个链表,按值大小新生成一个列表。然后按列表重新生成一遍链表。时间复杂度 O(m + n + m + n)。
然后发现,其实每一步都是比较两个 Node,把值较小的或者不为空的节点排在前面。于是,可以有了:
if not l1 or (l2 and l1.val > l2.val):
l1, l2 = l2, l1
阅读并点评至少一篇英文技术文章
https://medium.com/@alicjaes/saying-goodbye-to-microsoft-bb5db8662656
Saying goodbye to Microsoft
作者是一名曾在微软工作的女生,很遗憾她的团队让她很不舒服,从她的经历看来离开是对的。
解决不了的才是问题,杀不死我们的让我们更强大。
学习至少一个技术技巧
环境变量,可以固化一些配置性的参数到变量中,从而实现共享,方便修改等目的。
环境变量可以被当前进程读取,但修改/设置环境变量不一定是全局的。
至少分享一篇有观点和思考的技术文章
https://braydie.gitbooks.io/how-to-be-a-programmer/content/zh/
How to be a Programmer 中文版
感觉程序员的工作中,很重要一部分是扮演沟通的角色,如何把产品需求落地成为技术解决方案,如何通过技术的眼光和手段把需求实现得更好。