当前位置: 首页 > news >正文

算法导论 (Thomas H.Cormen / Charles E.Leiserson / Ronald L.Rivest / Clifford Stein 著)

第一部分 基础知识

第1章 算法在计算中的作用

第2章 算法基础

第3章 函数的增长

第4章 分治策略

第5章 概率分析和随机算法

第二部分 排序和顺序统计量

第6章 堆排序

第7章 快速排序

第8章 线性时间排序

第9章 中位数和顺序统计量

第三部分 数据结构

第10章 基本数据结构

第11章 散列表

第12章 二叉搜索树

第13章 红黑树

第14章 数据结构的扩张

第四部分 高级设计和分析技术

第15章 动态规划

第16章 贪心算法

第17章 摊还分析

第五部分 高级数据结构

第18章 B树

第19章 斐波那契堆

第20章 van Emde Boas 树

第21章 用于不相交集合的数据结构

第六部分 图算法

第22章 基本的图算法

第23章 最小生成树

第24章 单源最短路径

第25章 所有结点对的最短路径问题

第26章 最大流

第七部分 算法问题选编

第27章 多线程算法

第28章 矩阵运算

第29章 线性规划

第30章 多项式与快速傅里叶变换

第31章 数论算法

第32章 字符串匹配

第33章 计算几何学

第34章 NP完全性

第35章 近似算法

---------------------------------------------------------------------------------------------------------------------------------------------------------------

第1章 算法在计算中的作用

思考题

1-1 (运行时间的比较) 假设求解问题的算法需要f(n)毫秒,对下表中的每个函数f(n)和时间t,确定可以在时间t内求解的问题的最大规模n

 1秒钟1分钟1小时1天1月1年1世纪
lgn       
sqrt(n)       
n       
nlgn       
n^2       
n^3       
2^n       
n!       

 

第2章 算法基础

练习

2.2-1 用 记号表示函数n^3/1000-100n^2-100n+3

Θ(n^3)

2.2-2 考虑排序存储在数组A中的n个数:首先找出A中的最小元素并将其与A[1]中的元素进行交换.接着,找出A中的次最小元素并将其与A[2]中的元素进行交换.对A中前n-1个元素按该方式继续.该算法称为选择算法,写出其伪代码.该算法维持的循环不变式是什么?为什么它只需要对前n-1个元素,而不是对所有n个元素运行?用Θ记号给出选择排序的最好情况与最坏情况运行时间.

2.2-3 再次考虑线性查找问题(参见练习2.1-3).假定要查找的元素等可能地为数组中的任意元素,平均需要检查输入序列的多少元素?最坏情况又如何呢?用Θ记号给出线性查找的平均情况和最坏情况运行时间.证明你的答案.

2.2-4 应该如何修改任何一个算法,才能使之具有良好的最好情况运行时间?

第3章 函数的增长

 

第4章 分治策略

 

第5章 概率分析和随机算法

 

第6章 堆排序

 

第7章 快速排序

 

第8章 线性时间排序

 

第9章 中位数和顺序统计量

 

第10章 基本数据结构

 

第11章 散列表

 

第12章 二叉搜索树

 

第13章 红黑树

 

第14章 数据结构的扩张

 

第15章 动态规划

 

第16章 贪心算法

 

第17章 摊还分析

 

第18章 B树

 

第19章 斐波那契堆

 

第20章 van Emde Boas 树

 

第21章 用于不相交集合的数据结构

 

第22章 基本的图算法

 

第23章 最小生成树

 

第24章 单源最短路径

 

第25章 所有结点对的最短路径问题

 

第26章 最大流

 

第27章 多线程算法

 

第28章 矩阵运算

 

第29章 线性规划

 

第30章 多项式与快速傅里叶变换

 

第31章 数论算法

 

第32章 字符串匹配

 

第33章 计算几何学

 

第34章 NP完全性

 

第35章 近似算法

 

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------

https://ita.skanev.com/

 

转载于:https://www.cnblogs.com/revoid/p/7599892.html

相关文章:

  • YON
  • Win10 UWP开发:摄像头扫描二维码/一维码功能
  • 疯狂java学习笔记1006---Scanner获取键盘输入
  • 【译】高阶函数:利用Filter、Map和Reduce来编写更易维护的代码
  • awk中的多字符分隔符转义问题
  • ajax跨域
  • 告别.NET生成报表统计图的烦恼 (转)
  • 阿里云首度公布策略无意布局云基础设施
  • TCP keepAlive
  • underscorcejs集合2(详情http://www.bootcss.com/p/underscore/#collections)
  • 修改 Linux /etc/profile 以后如何生效
  • 排序功能实现 jQuery实现排序 上移 下移
  • 细说WCF中的会话模式
  • 回声状态网络(ESN)基础教程
  • C# 序列化
  • 【108天】Java——《Head First Java》笔记(第1-4章)
  • 2017-08-04 前端日报
  • go语言学习初探(一)
  • java B2B2C 源码多租户电子商城系统-Kafka基本使用介绍
  • JS基础之数据类型、对象、原型、原型链、继承
  • js数组之filter
  • Meteor的表单提交:Form
  • Redis 中的布隆过滤器
  • 不发不行!Netty集成文字图片聊天室外加TCP/IP软硬件通信
  • 二维平面内的碰撞检测【一】
  • 浮动相关
  • 复杂数据处理
  • 京东美团研发面经
  • 精益 React 学习指南 (Lean React)- 1.5 React 与 DOM
  • 猫头鹰的深夜翻译:Java 2D Graphics, 简单的仿射变换
  • 如何编写一个可升级的智能合约
  • Redis4.x新特性 -- 萌萌的MEMORY DOCTOR
  • ​​​​​​​​​​​​​​汽车网络信息安全分析方法论
  • # Swust 12th acm 邀请赛# [ E ] 01 String [题解]
  • #pragma data_seg 共享数据区(转)
  • #调用传感器数据_Flink使用函数之监控传感器温度上升提醒
  • (4)logging(日志模块)
  • (六)激光线扫描-三维重建
  • (十二)devops持续集成开发——jenkins的全局工具配置之sonar qube环境安装及配置
  • (一)Neo4j下载安装以及初次使用
  • (译)2019年前端性能优化清单 — 下篇
  • (转)linux自定义开机启动服务和chkconfig使用方法
  • **PHP分步表单提交思路(分页表单提交)
  • .htaccess 强制https 单独排除某个目录
  • .net core Swagger 过滤部分Api
  • .NET MVC之AOP
  • .net wcf memory gates checking failed
  • .NET/C# 避免调试器不小心提前计算本应延迟计算的值
  • .NET/C# 的字符串暂存池
  • .net2005怎么读string形的xml,不是xml文件。
  • .NET框架
  • .NET设计模式(7):创建型模式专题总结(Creational Pattern)
  • @Builder用法
  • @configuration注解_2w字长文给你讲透了配置类为什么要添加 @Configuration注解
  • @RequestMapping-占位符映射