1.最大连续乘积子数组 给定一个浮点数数组,任意取出数组中的若干个连续的数相乘,请找出其中乘积最大的子数组。 蛮力轮询: 时间复杂度为O(n^2) 动态规划: 乘积子数组中可能有正数,负数, 也可能有0。 由于负数的存在,可考虑同时找出最大乘积和最小乘积。 假设数组为a[],直接利用动态规划来求解。 ...
分类:
编程语言 时间:
2018-04-14 20:46:59
阅读次数:
261
内容全部来自编程之法:面试和算法心得一书,实现是自己写的使用的是java 题目描述 给一个浮点数序列,取最大乘积连续子串的值,例如 -2.5,4,0,3,0.5,8,-1,则取出的最大乘积连续子串为3,0.5,8。也就是说,上述数组中,3 0.5 8这3个数的乘积30.58=12是最大的,而且是连续 ...
分类:
编程语言 时间:
2018-01-17 20:18:49
阅读次数:
166
问题描写叙述: 给定数组,找出连续乘积最大值的子序列。比如 0,-1,-3。-2。则最大连续乘积为6= (-3) * (-2)实现思路此题与最大连续和的子序列问题相似,也可通过找到递推公式然后用DP来解。关键在于求公式的过程要考虑到元素可能为负的情况。如果元素都为正数的话,DP公式为:dp[i] = ...
分类:
其他好文 时间:
2017-06-04 21:10:28
阅读次数:
104
最大连续乘积子串题目描述:给一个浮点数序列,取最大乘积连续子串的值,例如-2.5,4,0,3,0.5,8,-1,则取出的最大乘积子串为3,0.5,8。也就是说,上述数组中,3,0.5,8这3个数的乘积3*0.5*8 = 12是最大的,而且是连续的。
分析:
注意子串和字序列的区别。
子串:是串的连续的部分。
子序列:是串中不改变顺序,但是是去掉个别元素的到新的序列。
1,连续数的乘积,最简...
分类:
编程语言 时间:
2016-05-12 15:43:56
阅读次数:
258
题目乘积最大子序列找出一个序列中乘积最大的连续子序列(至少包含一个数)。样例比如, 序列[2,3,-2,4]中乘积最大的子序列为[2,3],其乘积为6。解题法一:直接暴力求解时间复杂度O(N2)public class Solution { /** * @param nums: an ...
分类:
其他好文 时间:
2015-11-20 19:52:24
阅读次数:
117
-2.5 4 0 3 0.5 8 -1Ans:(3,0.5,8)templateComparable maxprod(constvector& v){int i;Comparable maxProduct =1;Comparable minProduct =1;Comparable maxCurre...
分类:
其他好文 时间:
2015-09-26 23:54:15
阅读次数:
255
def MaxSum(self,array,n): sum=array[0] result=array[0] for i in range(0,n): if sumresult: result=sum end=i ...
分类:
编程语言 时间:
2015-04-07 18:58:37
阅读次数:
314
动态规划题目(三)——最大连续乘积子串
1. 题目描述
给一个浮点数序列,取最大乘积连续子串的值,例如 -2.5,4,0,3,0.5,8,-1,则取出的最大乘积连续子串为3,0.5,8。也就是说,上述数组中,3 0.5 8这3个数的乘积30.58=12是最大的,而且是连续的。
2. 动态规划求解
动态规划求解题目的时候最重要的是要找到状态转移方程!...
分类:
其他好文 时间:
2014-12-11 10:32:04
阅读次数:
128
Find the contiguous subarray within an array (containing at least one number) which has the largest product.For example, given the array[2,3,-2,4],the...
分类:
其他好文 时间:
2014-11-11 20:50:41
阅读次数:
188