遇到一个新的问题,我们可以用到很多解决问题的思路,下面的内容涵盖了大部分情况。
1、直观而系统的方式。
有些问题看一眼就能想到解决办法,如果遇到这种问题,你是很幸运的!
2、在心里问自己,以前解决过类似的问题吗?
如果有,可以找到你的笔记,或者在心里会想思路,如果没有,那么继续往下看。
3、有没有简单的方法
无论是解决什么问题,一开始都要从你能解决的最简单的用例入手,比如在面试的时候,面试官考察你的算法题,往往先思考第一个用例的实现,这样能快速找出规律。
4、把规律公式化
很多问题都和数学息息相关,当然,这个公式化也不仅仅表示数学公式,还可以是伪代码表达式。
5、简化问题
当问题的前提条件很多、或者存在多维的情况下,尝试着去掉一些次要的条件、降低维度来找到问题的切入口。
6、几何图表达
很多问题都是从需求里面提出来的,但是这些需求通常都是纯文字,如果能够转换成几何图来表示,会很有帮助,最简单的例子是刚学流程图的时候,将if else 用流程图表示出来,让人一眼就能看得明白。
7、分解问题
问题的条件很多的时候,除了简化,还可以分解,根据条件之间的关联分解成不同的区间。
8、神奇的倒序
在很多时候,前端工程师使用for解决数组问题时,会用到倒序遍历的方法,用过的人,说明你已经比较擅长使用算法的思路解决问题了。
9、排序可以解决很多问题
对杂乱无章的元素进行排序,通常适用于快速查找某些元素、展示等功能。
10、只考虑特殊的个体答案
有时候问题的实际答案是一个集合,但是我们不需要将集合的所有元素都找出来,比如判断数组中是否包含‘对象元素’。
总结
以上解决问题的思路来自《算法问题实战策略》
标签:很多,问题,元素,----,思路,倒序,解决问题,大全 From: https://www.cnblogs.com/hechunfeng/p/16733140.html