`

编程珠玑的求最大子集的题

阅读更多

编程珠玑第二版 第8章  给一个数组 求该数组的最大子集和

 

其中最好的算法是扫描算法 O(n)

用java代码实现如下

public class MaxSubArray {
    public static void main(String[] args) {
        int array[] = { 31, -41, 59, 26, -53, 58, 97, -93, -23, 84 };
//        int array[] = { -31, -41, -111,-12};
        int maxsofar = 0;
        int maxendinghere = 0;
        for (int i = 0; i < array.length; i++) {
            maxendinghere = (maxendinghere + array[i] > 0 ) ? (maxendinghere + array[i]) : 0;
            maxsofar = maxsofar > maxendinghere ? maxsofar : maxendinghere;
            System.out.println(i+":   "+maxendinghere + "   " + maxsofar);
        }
        System.out.println("final:  "+maxendinghere + "   " + maxsofar);
    }
}

 

这其中有几个问题

1. 假如数组里面全是负数, 这题答案就是不对的

2. 这个问题可以说是上一题的root cause,  为什么用0做判断的准则, 我试过把0换成10, 也可以得出结果

 

 

 

 

 

 

0
1
分享到:
评论
2 楼 lich0079 2011-06-02  
不是 是求最大的子集和
1 楼 mirguest 2011-06-02  
我记得书上是不是说总的求和为零?

相关推荐

    编程珠玑 编程珠玑 编程珠玑 编程

    《编程珠玑》是一本经典的计算机科学与编程书籍,作者是Jon Bentley。这本书以其独特的视角深入探讨了程序设计的艺术和技巧,旨在提升程序员的问题解决能力,优化算法,并提高代码效率。书中涵盖了一系列实用的编程...

    编程珠玑(第二版)答案

    根据提供的标题“编程珠玑(第二版)答案”和描述“编程珠玑(第二版)答案”,我们可以推测出这是关于《编程珠玑》这本书的相关解答资料。《编程珠玑》是一本经典的计算机科学书籍,作者为Jon Bentley。本书旨在...

    编程珠玑 第2版(修订版)_编程珠玑修订_资料_

    《编程珠玑 第2版(修订版)》是一本深受程序员喜爱的经典著作,它不仅提供了丰富的编程实践经验,还深入探讨了程序设计的艺术与智慧。这本书的修订版更是在原版基础上进行了更新和完善,旨在帮助程序员提升编程技能,...

    编程珠玑源码下载编程珠玑书后源代码

    《编程珠玑》是计算机科学领域的一本经典之作,由Jon Bentley 编著,它以其深入浅出的方式探讨了程序设计的问题和解决方案,尤其在数据结构、算法优化以及问题解决策略方面有着独到的见解。这本书的源代码是作者为了...

    编程珠玑(续)

    《编程珠玑(续)》是计算机科学方面的经典名著《编程珠玑》的姊妹篇,讲述了对于程序员有共性的知识。书中涵盖了程序员操纵程序的技术、程序员取舍的技巧、输入和输出设计以及算法示例,这些内容组成一个有机的整体,...

    编程珠玑习题集锦

    《编程珠玑》是计算机科学领域的一本经典之作,作者Jon Bentley通过一系列实际问题的探讨,引导读者理解和掌握编程中的高效解题技巧。书中的问题和解决方案涵盖了算法设计、数据结构优化以及问题解决策略等多个方面...

    编程珠玑 编程珠玑续

    《编程珠玑》和其续篇是两部深受程序员喜爱的经典著作,主要涵盖了程序设计、算法分析和数据结构等核心编程领域。这两本书以其深入浅出的讲解方式和丰富的实例,帮助读者提升编程技巧和解决问题的能力。 在《编程...

    编程珠玑.pdf

    第一部分 编 程 技 术 第1章 性能监视工具 3 1.1 计算素数 3 1.2 使用性能监视工具 7 1.3 一个专用的性能监视工具 8 1.4 开发性能监视工具 10 1.5 原理 11 1.6 习题 11 1.7 深入阅读 12 第2章 关联数组 13 ...

    编程珠玑高清pdf版.pdf

    《编程珠玑》是计算机科学领域的一本经典之作,由Jon Bentley著,主要探讨了程序设计问题的解决方法和算法优化。这本书的核心理念是通过实际的编程问题来传授如何高效地设计和分析算法,旨在提升程序员的问题解决...

    编程珠玑续本

    编程珠玑续、编程珠玑续本、编程珠玑续本、编程珠玑续本

    编程珠玑 Programming Pearls 第二版(中文版+源代码)

    《编程珠玑》是计算机科学领域的一本经典之作,作者是Jon Bentley,它以其独特的视角和深入浅出的讲解方式,向读者展示了编程艺术的精髓。这本书的第二版更是深受程序员和计算机科学家们的喜爱,因为它不仅涵盖了...

    编程珠玑II(编程珠玑·续) 扫描版6.56M pdf格式

    编程珠玑II(编程珠玑·续) 扫描版6.56M pdf格式

    编程珠玑(PDF带目录)

    《编程珠玑》无疑是计算机编程领域中的一块瑰宝,其作者Jon Bentley在编写时便意在创建一本能够经受时间考验的经典著作。本书以其深入浅出的讲解方式和丰富的实例,不仅为读者提供了算法领域的知识,更提供了深入...

    《编程珠玑》源代码

    《编程珠玑》第一版是我早期职业生涯中阅读过的对我影响较大的书籍之一,在书中首次接触到的很多观点都让我长期受益。作者在这一版本中做了重要更新。新增加的很多例子让我耳目一新。 ——Steve McConnell,《代码...

    编程珠玑及其源码

    编程珠玑,编程珠玑续以及源码,本书针对程序设计人员探讨了一系列的实际问题,这些问题是对现实中常见问题的归纳总结。作者虽然没有给出解决这些问题的具体代码,但始终非常富有洞察力和创造力地围绕着这些折磨...

    编程珠玑源代码

    《编程珠玑》是计算机科学领域的一本经典著作,作者是Jon Bentley,它以其深入浅出的讲解方式,探讨了程序设计中的一些核心问题。这本书不仅涵盖了算法和数据结构,还涉及了问题解决、程序效率优化以及软件工程的...

    编程珠玑(经典)

    《编程珠玑》的PDF版本包含了原书的所有内容,包括示例代码和练习题,是学习和提升编程技能的理想资料。无论你是初学者还是经验丰富的开发者,都可以从中受益匪浅,不断提升自己的编程技艺。 总的来说,这本经典...

    《编程珠玑》(Programming Pearls)课本和习题代码实现

    《编程珠玑》是计算机科学领域的一本经典著作,作者Jon Bentley通过一系列精心设计的问题和解决方案,探讨了程序设计的艺术和技巧。这本书以其独特的视角,深入浅出地讲解了算法和数据结构,以及如何优雅地解决复杂...

    编程珠玑+续

    编程珠玑+续

Global site tag (gtag.js) - Google Analytics