摘要: 首先看到此问题时,便感觉这题的解法大概是动态规划方向的。然后便想尝试用动态规划来做这题,子问题就是n-1的最大子段和,然后如果n-1的最大子段包含第n-1个元素,那么如果第n个元素大于0,则n的最大子段是,n-1的最大子段加上第n个元素。若n-1的最大子段不包含第n-1个元素,则n的最大子段在n-1的最大子段和n往前累加的最大和之间的较大者是最大子段。但是,此方法无用步骤较多,所以时间复杂度上是nlogn,并不是一个非常好的方法。看了正确答案后发现答案确实巧妙,一旦前面某一段的和是小于0的,便可以抛弃不要,然后进行比较,此方法复杂度是n切代码也非常短。 阅读全文
posted @ 2013-09-20 09:03 打字的烦恼 阅读(310) 评论(1) 推荐(0) 编辑