设计思想之分治
什么是分治
分治法的思想是分而治之,就是把一个复杂问题分成两个或更多相同或相似的子问题,再把子问题分成更小的子问题……直到最后子问题可以简单的直接求解,将最后子问题的解合并得到原问题的解。因为问题小到一定规模可以更好解决,将一个问题分解若干个相同问题,再利用分解出若干子问题的解可以合并为该问题的解。这个技巧是很多高效算法的基础。
应用分治的示例
找出列表中最大值
1 | def max_num(lst): |
给定一个列表,判断某个元素是否在其中
1 | def in_lst(lst,key): |