我为什么要写LeetCode的博客?

时间:2022-03-01 15:20:30

# 增强学习成果

有一个研究成果,在学习中传授他人知识和讨论是最高效的做法,而看书则是最低效的做法(具体研究成果没找到地址)。我写LeetCode博客主要目的是增强学习成果。当然,我也想出名,然而不知道能否出名。

# 给算法的新手们提供一种思考方式的参考

提前说明,本人也不是高手。

算法这个东西有点玄乎。很多新手(包括我)初期入门的时候都学的是《算法导论》,然而我并不觉得《算法导论》是一本学习算法很好的书。

我们设计算法的流程,并不是像《算法导论》那样,好像天生就知道这个算法怎么设计,轻而易举。与我而言,设计算法是一种螺旋上升的过程。起初,可以先尝试最原始的想法。尝试成功之后,我们可以接着再优化。比如,我们可以从这几个方面思考优化:

  1. 寻找算法中运算量大,运算时间长的语句,过程。看这些运算是不是必要,是不是有替代的方法?
  2. 我们要解决的问题是否可以找出一些性质,可否简化运算?
  3. 设计算法的时候是不是限制了自己的想象,可不可以重新找到一种方法运算?

我所有的文章都是基于这样一个思路来写,这也是我的思考方式。

推荐大家学习《Algorithm》Robert Sedgewick,并且一定要配合教学视频https://www.coursera.org/learn/introduction-to-algorithms,https://www.coursera.org/learn/java-data-structures-algorithms-2学习。这本书是我真正意义上算法设计的启蒙书。

# 希望别人通过博客了解我

我是一个内向的人,并不怎么和别人聊天,尤其是和一无所知且不知天高地厚的人。一无所知并不可怕,可怕的是没有一个求知的态度。

我懂得技术不多,所以如果在面试或者与高人交谈时,别人会觉得我没有什么水平。其实并不是这样,我觉得我的思维方式可以很大程度上拟补甚至掩盖懂得技术不多的缺点。

我觉得,思维方式决定了学习方式学习方式决定了技术水平,所以说,思维方式很重要。

我写博客就是为了展现我的思维方式。