10 2014 档案
摘要:题目描述: 从一列数中筛除尽可能少的数使得从左往右看,这些数是从小到大再从大到小的(网易)。分析: 这可以用双端LIS方法来解决,先求一遍从左到右的,再求一遍从右到左的。最后从里面选出和最大的即可。代码实现:#include using namespace std;int DoubleEndLI...
阅读全文
摘要:最长上升子序列LIS问题属于动态规划的初级问题,用纯动态规划的方法来求解的时间复杂度是O(n^2)。但是如果加上二叉搜索的方法,那么时间复杂度可以降到nlog(n)。 具体分析参考:http://blog.chinaunix.net/uid-26548237-id-3757779.html 代...
阅读全文