ARTS-WEEK-018
Algorithm:
22: Generate Parentheses
39: Combination Sum
40: Combination Sum II
46: Permutations
47: Permutations II
328: Odd Even Linked List
本周集中精力多做了一些题,接受做不出来时的懵逼状态,认真分析题解并不断练习,逐渐找到了一些感觉。可以总结的经验:回溯、搜索、链表这些问题都必须画图辅助思考,这样才能发现剪枝条件以及指针边界等细节。最后我觉得刷题可以类比学习乐器,不要纠结于是不是自己想出的,而是要学习、思考、总结出最合适的方案,并不断练习、熟悉思路和技巧,形成肌肉记忆(不断冒出思路)。
Review:
The Go Blog: Go maps in action
在 golang 官方博客中有大量简洁实用的指导文章,比如这篇介绍的 map 用法的,不仅有核心 api 使用介绍,还包括一系列实践指导,比如利用零值机制,value 是 bool 和 slice 时省略存在检查。此外 key 的类型可以是 boolean, numeric, string, pointer, channel, and interface types, 以及只包含前面类型值的 structs 或 arrays,例外只有 slice、map、function 这些不行,合法的 key 都是可以比较的(comparable)。
Tip:
curl如何指定host解析?
有时在网络调试时需要临时配置 host,使请求域名解析到指定IP,但是修改 host 文件需要 root 权限,并且频繁修改文件也可能引起冲突,而 curl 作为一个强大的网络请求工具,可以用 --resove
参数解决这个问题,完整示例如下:
curl --resolve xxx.yy.com:80:127.13.12.5 -X POST \
http://xxx.yy.com/add \
-H 'cache-control: no-cache' \
-H 'content-type: application/json' \
-d '{"fileName":"xxxxx"}'
Share:
将番茄时间游戏化
即使用了番茄时间,依然很容易拖延,缺少执行动力?我发现番茄时间需要更加游戏化,关键在于明确目标、可操作性和即时反馈。认真思考、缩小范围和拆解目标,为每个子项任务设置一个结束时间,以便在此时间结束前冲刺,完成是最重要的,可以一个个完成才有成就感,不要追求完美和完整,那样很容易永远都是进行中。