递增子序列数目计算的算法
2011-10-17 23:47
218 查看
这是前几天笔试时,考场上想出来的算法,但是算了两次都不一样,最后只好蒙了一个选项,悲催!
问题如下:
给定一个整数序列,例如 4,2,6,3,7,1 ,该序列有多少个递增子序列?
我的算法如下:
记第i个元素为arr[i] ,记以第i个元素结尾的递增子序列有N[i]个,
则,考虑以第i+1个元素结尾的所有递增子序列,
首先置N[i+1]=1;//表示只有第i+1个元素一个元素的子序列。
对j=1...i
如果arr[j]<arr[i+1]
N[i+1]+=N[j]
最后结果等于N数组里所有元素之和。
问题如下:
给定一个整数序列,例如 4,2,6,3,7,1 ,该序列有多少个递增子序列?
我的算法如下:
记第i个元素为arr[i] ,记以第i个元素结尾的递增子序列有N[i]个,
则,考虑以第i+1个元素结尾的所有递增子序列,
首先置N[i+1]=1;//表示只有第i+1个元素一个元素的子序列。
对j=1...i
如果arr[j]<arr[i+1]
N[i+1]+=N[j]
最后结果等于N数组里所有元素之和。
相关文章推荐
- 递增子序列数目计算的算法
- 算法_动态规划_最长单调递增子序列
- 算法-计算递增最大子序列长度(动态规划)
- 算法题-数组的最长递增子序列
- 计算在已知字符串中所有回文子序列的数目
- 文本比较算法Ⅵ——用线性空间计算最大公共子序列(翻译贴)
- 计算最大子序列和算法
- 【DP】计算一个数组的最长递增子序列
- 【动态规划】LIS最长单调递增子序列 logn算法 并且输出子序列
- 最长递增子序列_python_算法与数据结构
- 大学时候想的一个算法——计算数组中最大和序列
- 算法_动态规划_最长单调递增子序列问题(O(nlogn)的时间复杂度)
- 最长递增子序列的三种算法
- 计算最大序列和算法
- 大学时候想的一个算法——计算数组中最大和序列
- 算法习题23:用最简单, 最快速的方法计算出下面这个圆形是否和正方形相交
- C# 中使用 MD5 算法计算 hash (哈希)值的四种方法
- STL标准算法(一)序列查找算法和序列修改算法
- TCP头校验和计算算法详解
- 一天一道算法题——数对数目分析