`

【编程珠玑】第八章 算法设计技术

 
阅读更多

一,概述

问题:求一维数组中连续子向量的最大和。

例如:a[6]={3,4,-2,-9,10,8}; 则最大连续子向量的和 为 10+8 = 18

1)解法一:简单算法

2)两个平方算法

算法一:


算法二:


3)分治算法

思想:以m为分界线,最大值有三种情况

一:在m左侧

二:在m右侧

三:跨越m

关键:最初求解左右最大值时候,一定要从中间向两侧递增。看源码解释……


【注意】 max2() 如果用宏 #define max(a,b,c) max(a,b) >c?max(a,b):c 则不会得到正确结果

4)扫描算法

二,总结

优化算法的策略

1)保存已经计算的状态,避免重复计算。

2)将信息预处理到数据结构中。例如算法二

3)分治算法,采取更高级的算法

4)扫描算法,巧妙

5)下界:证明某个匹配的下界,确定最优算法

三,习题

10)可以采用两种方法:O(n*n)


返回结果是 1



可以采用O(nlogn)的算法


返回结果是 1


13)最大子数组问题,给定n*n数组,求矩形子数组的最大总和。

详见博客:http://blog.csdn.net/tianshuai11/article/details/7487882



分享到:
评论

相关推荐

    编程珠玑 算法 数据结构

    编程珠玑 很好的资料 能加强对对算法和数据结构的理解

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

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

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

    我觉得不错,和大家分享! 编程珠玑 编程珠玑 编程珠玑

    编程珠玑编程珠玑

    编程珠玑编程珠玑

    编程珠玑(续)

    《编程珠玑(续)》是计算机...书中涵盖了程序员操纵程序的技术、程序员取舍的技巧、输入和输出设计以及算法示例,这些内容组成一个有机的整体,如一串串珠玑展示给程序员。  《编程珠玑(续)》适合各级程序员阅读参考。

    编程珠玑 编程珠玑续

    编程珠玑和编程珠玑续两本,上传赚点分,填充填充填充

    编程珠玑习题集锦

    书的内容围绕程序设计人员面对的一系列实际问题展开。作者Jon Bentley 以其独有的洞察力和创造力,引导读者理解这些问题并学会解决方法,而这些正是程序员实际编程...《编程珠玑(第2版)》是计算机科学方面的经典名著。

    编程珠玑--算法

    编程中的一本关于算法的好书。

    编程珠玑之第二章questionC 测试数据

    本资源只是“编程珠玑之第二章questionC: 求变位词问题”的简单的测试数据。

    算法导论中文版第二版+编程珠玑

    算法导论中文版第二版_Cormen_完整目录_扫描版pdf+编程珠玑pdf

    编程珠玑 第二版 修订版

    第8章 算法设计技术 73 8.1 问题及简单算法 73 8.2 两个平方算法 74 8.3 分治算法 75 8.4 扫描算法 77 8.5 实际运行时间 77 8.6 原理 79 8.7 习题 80 8.8 深入阅读 81 第9章 代码调优 83 9.1 典型的故事 ...

    编程珠玑续本

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

    编程珠玑.pdf

    编程珠玑.pdf 面试必备,算法必备,各种算法的精彩解析

    算法艺术 编程珠玑

    这些都是程序员实际编程生涯中的基本技能 Fred Brooks在《人月神话》中描述了一幅广阔的画面 他的作品着重介绍了在大型软件项目中关键角色的管理 书中涵盖了程序员操纵程序的技术 程序员取舍的技巧 输入和输出设计...

    编程珠玑及其源码

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

    《编程珠玑》源代码

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

    编程珠玑(PDF带目录)

    书:编程珠玑(PDF带目录) 著名的算法书

Global site tag (gtag.js) - Google Analytics