Algorithm: 每周至少做一个 LeetCode 的算法题
LeetCode 435 无重叠区间
使用贪心算法解决
贪心算法: 如果局部最优能够推导出全局最优, 且找不出反例, 即可基本确定使用贪心算法
两数之和, 三数之和, 买卖股票的最佳时机(1)(2),
Review: 阅读并点评至少一篇英文技术文章
Tips: 学习至少一个技术技巧
Swift 中枚举高级用法及实践
1 嵌套枚举: 枚举中有枚举
2 为枚举的 case 添加更多信息: 关联值
3 枚举中如果定义了关联值, 则不可以再设置原始值?
A Swift enum can either have raw values or associated values.
Implementing this value is really simple: You just add a computed property to your enum and return a different value for each case.
参考: Why Swift Enums with Associated Values Cannot Have a Raw Value
4 枚举中的方法为每一个enum case而“生”。所以倘若想要在特定情况执行特定代码的话,你需要分支处理或采用switch语句来明确正确的代码路径。
5 为枚举添加方法: 要区分是否是为所有 case 添加, 还是为单独的 case 添加
6 一旦我们为枚举增加了关联值,Swift 就没有办法正确地为两个枚举进行相等性判断,需要我们自己实现 == 运行符
Share: 分享一篇有观点和思考的技术文章
React.js 小书学习中, 可以基于 TypeScript 实现评论区组件.