百科问答小站 logo
百科问答小站 font logo



一个算法面试题,怎么写? 第1页

  

user avatar   hao-di-fang-bug 网友的相关建议: 
      

这是一个很有趣也很常见的问题,但是很不幸的是,这个问题是NP-hard[1],也就是说除非 否则没有多项式时间算法。

但是我们可以用动态规划设计一个伪多项式的算法[2] ,虽然也没有那么简单。当然,一个带剪枝的搜索算法,应该是很容易实现的,我想这应该也是这道面试题的初衷。

另外这篇review[3] 总结了了很多这类工作安排问题的复杂度和算法,虽然都是些上世纪的研究,但也是很全面和深刻的。

参考

  1. ^Du J, Leung J Y T. Minimizing total tardiness on one machine is NP-hard[J]. Mathematics of operations research, 1990, 15(3): 483-495. https://doi.org/10.1287/moor.15.3.483
  2. ^Lawler E L. A “pseudopolynomial” algorithm for sequencing jobs to minimize total tardiness[M]//Annals of discrete Mathematics. Elsevier, 1977, 1: 331-342. https://www.sciencedirect.com/science/article/pii/S0167506008707428
  3. ^A Review of Machine Scheduling: Complexity, Algorithms and Approximability https://link.springer.com/chapter/10.1007/978-1-4613-0303-9_25



  

相关话题

  你见过最差的算法工程师能差到什么程度? 
  任何密码都可以用穷举推算出来,只是时间问题。如果是这样的话,那不是很不安全? 
  如何看待滴滴章文嵩称,滴滴面临的问题比 AlphaGo 复杂 100 倍? 
  卡尔曼滤波器是如何运用于多传感器融合的? 
  2021-05-28:跳跃游戏 II。给定一个非负整数数组,你最初位于数组的第一个位...如何解答呢? 
  2021-05-28:跳跃游戏 II。给定一个非负整数数组,你最初位于数组的第一个位...如何解答呢? 
  大米被煮成米饭,价值一两块,分成四五份,包成粽子,价值五六块;酿成酒,价值一二十块,给你怎样的启示? 
  当面试官问你为什么离职,你怎么回答? 
  我发现设计模式一个很奇妙的情况,不知各位知友遇过没? 
  怎样学好动态规划? 

前一个讨论
Linux的ls -l命令输出的第二列的数字代表什么?
下一个讨论
火星风暴有危险吗?





© 2025-05-28 - tinynew.org. All Rights Reserved.
© 2025-05-28 - tinynew.org. 保留所有权利