标签分类
当前位置:首页 > 程序设计电子书 > 算法电子书网盘下载
算法设计与分析基础 算法设计与分析基础
码小辫

码小辫 提供上传

资源
40
粉丝
19
喜欢
91
评论
18

    算法设计与分析基础 PDF 第3版

    算法电子书
    • 发布时间:

    给大家带来的一篇关于算法相关的电子书资源,介绍了关于算法、设计、分析、基础方面的内容,本书是由清华大学出版社出版,格式为PDF,资源大小20.2 MB,Anany编写,目前豆瓣、亚马逊、当当、京东等电子书综合评分为:9.7,更多相关的学习资源可以参阅 程序设计电子书、等栏目。

  • 算法设计与分析基础 PDF 下载
  • 下载地址:https://pan.baidu.com/s/1XT2uVDuPDM45esNCe2CrAw
  • 分享码:s1v1
  • 算法设计与分析基础 PDF

    算法设计与剖析基础(第3版)在叙述算法设计技术时选用了新的归类方式,在探讨统计分析方法时条分缕析,产生了连贯性井然有序、眼前一亮的设计风格。为有利于大学生把握,这书包含计算方法新手入门课程内容的精彩内容,更重视对定义(并非方式)的了解。书中根据某些时兴的迷题来激起大学生的兴趣爱好,协助她们提升和提升处理计算方法难题的工作能力。每章总结、练习题提醒和详尽解释,产生了十分独特的课堂教学特点。

    《算法设计与剖析基础(第3版)》做为第3版,相对性前版调节了好几个章节目录的內容和次序,一起提升了某些计算方法,并拓展了计算方法的运用,促使实际计算方法和通用性算法设计技术的相匹配更为清楚井然有序;各章总计提升了75道练习题,主要包括某些趣味的迷题和面试问题。

    《算法设计与剖析基础(第3版)》非常合适作为算法设计和剖析的基础教材内容,也合适一切有兴趣爱好研究计算方法秘密的用户应用,要是用户具有数据结构和离散数学的专业知识只能。

    目录

    • 第1章绪论
    • 第2章算法效率分析基础
    • 第3章蛮力法
    • 第4章减治法
    • 第5章分治法
    • 第6章变治法
    • 第7章时空权衡
    • 第8章动态规划
    • 第9章贪婪技术
    • 第10章迭代改进
    • 第11章算法能力的极限
    • 第12章超越算法能力的极限

    上一篇:Java设计模式深入研究  下一篇:全栈性能测试修炼宝典:JMeter实战

    展开 +

    收起 -

    算法相关电子书
    学习笔记
    网友NO.886373

    Java实现求子数组和的最大值算法示例

    本文实例讲述了Java实现求子数组和的最大值算法。分享给大家供大家参考,具体如下: 一般C和C++在算法实现中使用较多,下面我们通过java语言实现算法,更有亲切感。 题目: 输入一个整形数组,数组里有正数也有负数。 数组中连续的一个或多个整数组成一个子数组,每个子数组都有一个和。 求所有子数组的和的最大值。 例如输入的数组为1, -2, 3, 10, -4, 7, 2, -5,和最大的子数组为3, 10, -4, 7, 2, 因此输出为该子数组的和18。 实现代码: package arrDemo;public class MaxSub { public static void main(String[] args) { // TODO 自动生成的方法存根 findMaxSubArySum1(); } public static void findMaxSubArySum1() { // sum为子数组的和 int sum = 0; // max为子数组的最大和 int max = 0; // 最大子数组的起始位置 int startPos = 0; // 最大子数组的结束位置 int endPos = 0; int[] array = { -1, 2, -3, 12, -5, -1, 9, -2 }; for (int i = 0; i array.length; i++) { sum += array[i];// 求和 if (sum 0) {// 如果当前求得总和为负数的话,就将其清零,并且开始位置从下一个位置开始 sum = 0; startPos = i + 1; } if (sum max) {// 如果求得总和大于之前的最大值的话,就将sum赋值给max,同时记录最后的位置 max = sum; endPos = i + 1; } } System.out.println("码农之家测试结果:"); System.out.println("Max:" + max); System.out.println("startPos:" + startPos + ",endPos:" + (……

    网友NO.949847

    java并发之原子操作类和非阻塞算法

    背景 近年来,在并发算法领域的大多数研究都侧重于非阻塞算法,这种算法用底层的原子机器指令(例如比较并发交换指令)代替锁来确保数据在并发访问中的一致性。非阻塞算法被广泛的用于在操作系统和JVM中实现线程/进程调度机制、垃圾回收机制以及锁和其他并发数据结构。 与基于锁的方案相比,非阻塞算法在设计和实现上都要复杂的多,但他们在可伸缩性和活跃性上却拥有巨大的优势,由于非阻塞算法可以使多个线程在竞争相同数据时不会发生阻塞,因此它能在粒度更细的层次上面进行协调,并且极大的减少调度开销。锁虽然Java语言锁定语法比较简洁,但JVM操作和管理锁时,需要完成的工作缺并不简单,在实现锁定时需要遍历JVM中一条复杂的代码路径,并可能导致操作系统级的锁定、线程挂起以及上下文切换等操作。 非阻塞算法 在基于锁的算法中可能会发生各种活跃性故障,如果线程在持有锁时由于阻塞I/O,内存页缺失或其他延迟执行,那么很可能所有线程都不能继续执行下去。如果在某种算法中,一个线程的失败或挂起不会导致其他线程也失败或挂起,那么这种算法就称为非阻塞算法。如果在算法的每个步骤中都存在某个线程能够执行下去,那么这种算法也被称为无锁算法。如果在算法中仅将CAS用于协调线……

    网友NO.752780

    JS实现的杨辉三角【帕斯卡三角形】算法示例

    本文实例讲述了JS实现的杨辉三角【帕斯卡三角形】算法。分享给大家供大家参考,具体如下: 杨辉三角,是二项式系数在三角形中的一种几何排列,在中国南宋数学家杨辉1261年所著的《详解九章算法》一书中出现。 在欧洲,帕斯卡(1623-1662)在1654年发现这一规律,所以这个表又叫做帕斯卡三角形。 帕斯卡的发现比杨辉要迟393年,比贾宪迟600年。 题目: 给定非负整数numRows,生成Pascal三角形的第一个numRows。在Pascal的三角形中,每个数字是它上面两个数字的总和。 输入: 5 输出: [ [1], [1,1], [1,2,1], [1,3,3,1], [1,4,6,4,1] ] JS代码如下: scriptvar generate = function(numRows) { if (numRows) { var result = [[1]]; for(var i = 1;i numRows;i++) { result[i] = []; for(var j = 0; j i + 1;j++) { result[i][j] = (result[i - 1][j] || 0) + (result[i - 1][j - 1] || 0); } } return result; }else { return []; }};console.log(generate(1000));/script 使用 在线HTML/CSS/JavaScript代码运行工具 :http://tools.jb51.net/code/HtmlJsRun测试上述代码,可得如下运行结果: 由于数据比较多,这里仅展示一部分运算结果,感兴趣的朋友可以自己动手测试一下,看看运行效果。 更多关于JavaScript相关内容感兴趣的读者可查看本站专题:《JavaScript数学运算用法总结》、《JavaScript数据结构与算法技巧总结》、《JavaScript数组操作技巧总结》、《……

    Copyright 2018-2019 xz577.com 码农之家

    版权责任说明