写代码----离不开的解决问题的思路大全
遇到一个新的问题,我们可以用到很多解决问题的思路,下面的内容涵盖了大部分情况。
1、直观而系统的方式。
有些问题看一眼就能想到解决办法,如果遇到这种问题,你是很幸运的!
2、在心里问自己,以前解决过类似的问题吗?
如果有,可以找到你的笔记,或者在心里会想思路,如果没有,那么继续往下看。
3、有没有简单的方法
无论是解决什么问题,一开始都要从你能解决的最简单的用例入手,比如在面试的时候,面试官考察你的算法题,往往先思考第一个用例的实现,这样能快速找出规律。
4、把规律公式化
很多问题都和数学息息相关,当然,这个公式化也不仅仅表示数学公式,还可以是伪代码表达式。
5、简化问题
当问题的前提条件很多、或者存在多维的情况下,尝试着去掉一些次要的条件、降低维度来找到问题的切入口。
6、几何图表达
很多问题都是从需求里面提出来的,但是这些需求通常都是纯文字,如果能够转换成几何图来表示,会很有帮助,最简单的例子是刚学流程图的时候,将if else 用流程图表示出来,让人一眼就能看得明白。
7、分解问题
问题的条件很多的时候,除了简化,还可以分解,根据条件之间的关联分解成不同的区间。
8、神奇的倒序
在很多时候,前端工程师使用for解决数组问题时,会用到倒序遍历的方法,用过的人,说明你已经比较擅长使用算法的思路解决问题了。
9、排序可以解决很多问题
对杂乱无章的元素进行排序,通常适用于快速查找某些元素、展示等功能。
10、只考虑特殊的个体答案
有时候问题的实际答案是一个集合,但是我们不需要将集合的所有元素都找出来,比如判断数组中是否包含‘对象元素’。
总结
以上解决问题的思路来自《算法问题实战策略》
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现
2021-09-27 (力扣) 933. 最近的请求次数 --JavaScript
2021-09-27 (力扣)20.有效的括号