Linus "good taste" coding

Linus 关于coding “good taste”的说明


bad taste

good taste

两者都是从单链表中删除目标节点,都需要遍历,效率上没有差别,但第一个实现是最符合直觉的方案,第二个方案换了个角度,但代码确实天翻地覆。

  • 普通代码: 对目标节点的前一个节点操作(if 存在的原因),替换指向目标为下一个节点
  • 神奇代码: 对目标节点直接操作,用后一个节点替换

换做我即便是用第一个方案很多次也不会去想更好的方案,毕竟前者太符合直觉了。这个新方案适用于很多链表操作,值得记录。

当然,Linus想说的应该是尽量在实现中减少例外的情况,尽量抽象出更好的模型适应所有的情况。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容