算法设计
算法是精确定义的结构化过程——问题求解过程,输入(问题实例)-> 算法(指令序列)-> 输出(问题的解)。
问题求解¶
对问题求解,就是将所要解决的问题进行抽象,转化为一个基础的数据结构,然后应用相关的算法。
算法设计与分析过程¶
理解问题 -> 算法策略 -> 数据结构 -> 算法描述 -> 算法证明 -> 算法分析 -> 算法实现。
算法策略¶
- 蛮力法
- 减治法
- 分治法
- 变治法
- 回溯法
- 贪婪法
- 时空权衡
- 动态规划
算法实现¶
一个算法,可以用 N 个编程语言描述。但是,编程语言的表达力是各异的。
Z 认为,Ruby 更适合原型设计与开发。
写在最后¶
针对算法面试,重在算法理解、分析和应用,而非算法设计。
最后更新: September 10, 2023