时空权衡

来自计算思维百科
跳转至: 导航搜索
时空权衡.png

对于一个算法而言,算法需要的时间越短越好,需要的存储空间越小越好,但是这两个因素往往难以同时满足。时空权衡是指在解决问题过程中对于所需时间与空间的取舍。

基本概念

时空权衡包括两个方面,时间和空间。时间,顾名思义指的是解决问题的快慢;空间,在计算机中指计算机的存储空间,在日常生活中也可以指人力资源或者实际的放置空间等等。在设计和选择解决问题的方法时经常在这两个因素之间做取舍。有时为了节省时间,我们会增加空间,有时空间不够,我们必须牺牲时间。

应用范围

时空权衡的思想不论是在算法设计中应用广泛,在任务分配管理中也起了重要作用。

使用方法及步骤

在设计或者选择解决问题的方法时,要考虑现有物质资源和时间限制,权衡两个条件的重要性做出最好的选择。

应用案例

应用1-齐牌

案例:桌上有一堆乱七八糟的扑克牌,要从这堆扑克牌中找出一副扑克牌,有很多方式,可以按照花色分类,也可以按照数字分类。但是如果桌子不够大,如果按照数字分,要分14堆,这么分的有点是每堆分得都很快,但是放不下所有堆;而如果按照花色分类只需放4堆,但是每堆要分14张,后续整理所需要的时间会比分4堆更快,这就是时间和空间的权衡。

应用2-任务分配

案例:在任务分配时,为了加速任务的完成,负责人往往会增加人员,人员就相当于计算机的存储空间,这样可以减少任务完成时间;但是如果人员不够,那只能牺牲时间,按照当前速度继续进行。

应用3-食堂窗口开设

案例:学校食堂窗口的开设也需要进行时空权衡。开设窗口多,则需要的空间也多,但是学生打饭时间会更快;而空间不够的情况下,只能开设少数窗口,牺牲学生的时间。

可以体现的计算思维

在时间和空间之间权衡利弊,对资源进行合理规划,更好地解决问题。时空权衡体现了计算思维中“规划”的特点。