五大经典算法分析
转载自:五大经典算法分析 https://www.cnblogs.com/parzulpan/p/9919208.html
分治算法
1. 基本概念
在计算机科学中,分治法是一种很重要的算法。字面上的解释是“分而治之”,就是把一个复杂的问题分成两个或更多的相同或相似的子问题,再把子问题分成更小的子问题……直到最后子问题可以简单的直接求解,原问题的解即子问题的解的合并。这个技巧是很多高效算法的基础,如排序算法(快速排序,归并排序),傅立叶变换(快速傅立叶变换)……
任何一个可以用计算机求解的问题所需的计算时间都与其规模有关。问题的规模越小,越容易直接求解,解题所需的计算时间也越少。例如,对于n个元素的排序问题,当n=1时,不需任何计算。n=2时,只要作一次比较即可排好序。n=3时只要作3次比较即可,…。而当n较大时,问题就不那么容易处理了。要想直接解决一个规模较大的问题,有时是相当困难的。
职场工作效率手册
任务管理
处理任务的流程:收集、厘清、整理、执行、回顾
现代任务管理工具:所有任务管理软件都在用一个体系,称之为LTF体系,List-Tag-Filter。
基础任务管理工具只有列表这个功能,高级任务管理工具会包括LTF三个功能,如全平台的Todoist,苹果平台的2Do、Omnifocus等等。
List是一层一层嵌套的,通过列表来组织任务,不断拆分,直到拆分到每一个具体的任务。列表用来确定一个东西的位置,而Tag用来表示一个任务的属性。标签在任务管理工具里可以横跨列表。Tag可以包括时间、优先级、人物,一个比较有趣的思路是用精力来做标签,我们可以把精力分为两档,“Focus”和“Brain Dead”。Filter是过滤,表示通过一定的条件,把我们需要的东西从一大堆信息中筛选出来。