【问题标题】:what is the greedy or dynamic programming approach of this?这是什么贪婪或动态编程方法?
【发布时间】:2014-11-12 12:11:58
【问题描述】:

我们有一个实数序列。所有数字都是唯一的。我们希望通过更改其中一些值来获得升序。我们可以更改任意数字。如何找到最佳算法来确定进行此序列所需的最少更改次数? 我们可以使用贪心或动态规划方法。

【问题讨论】:

    标签: algorithm dynamic-programming greedy


    【解决方案1】:

    首先找到最长递增子序列http://en.wikipedia.org/wiki/Longest_increasing_subsequence

    然后改变所有不属于这个子序列的数字以适应规则

    (证明:如果我们改变较少的数字并获得升序,那么没有改变的数字最初形成的递增子序列比'最长'更长)

    【讨论】:

      猜你喜欢
      • 2015-01-07
      • 1970-01-01
      • 2023-04-03
      • 2013-05-17
      • 1970-01-01
      • 2019-12-23
      • 2012-06-08
      • 2015-01-12
      • 2010-12-30
      相关资源
      最近更新 更多