踩坑笔记

Posted by 石坤 on 2018-04-20

通过写注释来整理自己的思路, 帮助自己debug. 同时也可以让自己的代码可读性增强.

踩坑. 在比较之前, 默认是整数之间的比较, 但是结果是错误的. 最后输出中间量后才发现, 自己比较的类型是字符型的. 所以”13”比”3”小.

早上的时间处理难题, 相对来说比较容易
学会利用不同的思维模式; focus model 和 diffuse model()

课表问题卡了很长时间, 终于解决了.
在解决问题的过程中犯了不少低级错误:

  1. 因为解决问题过程中遇到了不少麻烦, 所以想要放弃, 想要投机取巧, 不想找通用的规律了, 转而使用简单的表层现象, 迷惑部分使用者. 但是自己清楚地知道, 这样做只能解决部分人的问题. 自己清楚地知道, 这样做, 就是在逃避问题. 自己逃避问题, 不是因为问题没有意义, 而是因为问题比较难处理, 自己可能需要很长时间才解决.
  2. 无视数据类型, 进行比较大小. 本来的想法是整数之间的比较, 结果写成了字符串之间的笔记.
  3. 课程长度相加问题. 在这个问题上, 自己卡了很长时间, 换了几种不同的思路, 但是一开始的时候都失败了. 花了很长时间去琢磨这个问题.(其实, 这个问题在大一, 做OJ题目的时候遇到过, 记得当时使用的就是flag标记的方式解决). 不能使用删除list中元素的方式, 因为删除list元素之后, 后面的元素的位置也随之发生了变化, 导致有的item会被遗漏.
  4. 不要修改list本身的元素, 而是使用flag的方式, 标记他们是否被处理过. 使用另一个list去收集符合条件的item, 这样既能达到目的, 又能实现尽量不改动原始数据的效果.