给定数组,求最大的非邻接子数组之和
来源:互联网 发布:淘宝有哪些男装潮店 编辑:程序博客网 时间:2024/04/27 11:14
给定数组,求最大的非邻接子数组之和,复杂度o(n)
例如:
i) 3 2 7 10 结果是 13 ( 3 and 10)
ii) 3 2 5 10 7 结果是 15 (sum of 3, 5 and 7)
- 对数组 a[i], i = 1, 2, 3, ..., N , 结果是 f[N]
- f[1] = a[1]
- f[2] = max (a[1], a[2])
- f[n + 2] = max(f[n + 1], f[n] + a[n + 2])
代码:
- #include <stdio.h>
- int max(int a, int b)
- {
- return a > b ? a : b;
- }
- void main()
- {
- int a[] = {3, 2, 7, 10};
- int f1 = a[0];
- int f2 = max(a[0], a[1]);
- for (int i = 2; i < sizeof(a) / sizeof(a[0]); i++) {
- int f3 = max(f2, f1 + a[i]);
- f1 = f2;
- f2 = f3;
- }
- printf("%d", f2);
- }
- 给定数组,求最大的非邻接子数组之和
- 求数组的最大的非邻接子数组之和
- 求给定数组的最大子数组
- 求每个元素之和为最大的给定数组的子数组
- 求正数数组的子数组之和等于给定值
- 求最大子数组之和
- 求最大子数组之和
- 求最大子数组之和
- 求数组的连续子数组之和最大
- 求数组的最大子数组之和以及最大子数组之积
- 求最大连续子数组之和
- C++求最大子数组之和
- 求最大连续子数组之和
- 求数组的子数组之和的最大值,同时求得最大子数组的位置
- 求递增正数数组的子数组之和等于给定值
- 数组的子数组最大之和
- 给定数组的子数组最大和
- 求数组的子数组之和最大值
- Graphic Design Portfolio-Builder: Adobe Photoshop and Adobe Illustrator Projects
- Java程序员ActionScript 3入门
- Upgrading to PHP 5 [ILLUSTRATED]
- Ascent代码分析2-底层shared
- WebGIS(PostgreSQL+GeoServer+OpenLayers)之三 OpenLayers客户端数据显示
- 给定数组,求最大的非邻接子数组之和
- PHP Pocket Reference, 2nd Edition
- Practical Data Communications
- 揭示常见的重构误区
- Data Quality (The Kluwer International Series on Advances in Database Systems Volume 23)
- Excel by Example: A Microsoft Excel Cookbook for Electronics Engineers
- 您尝试使用 SharePoint 产品和技术向导时错误消息:"Exception: System.ArgumentException: 加密或解密过程中的错误
- 破釜沉舟
- CSS: The Definitive Guide [ILLUSTRATED]