算法导论 笔记
来源:互联网 发布:淘宝联盟官方发单助手 编辑:程序博客网 时间:2024/04/28 07:13
摘自网易公开课,麻省理工学院公开课:算法导论,以及其他博客。
二分法 的算法复杂度为O(logn),二分法的关键思想是 假设该数组的长度是N那么二分后是N/2,再二分后是N/4……直到二分到1结束(当然这是属于最坏的情况了,即每次找到的那个中点数都不是我们要找的),那么二分的次数就是基本语句执行的次数,于是我们可以设次数为x,N*(1/2)^x=1;则x=logn,底数是2.
二分法的前提是数组已经按照顺序进行了排列。
第一课:课程简介及算法分析
插入排序算法Insertion sort
插入排序就是每一步都将一个待排数据按其大小插入到已经排序的数据中的适当位置,直到全部插入完毕。
插入排序的性能对于小型问题来说可以满足,但是对于更大规模的排序问题,插入排序并不适用。
归并排序Merge sort
原理,把原始数组分成若干子数组,对每一个子数组进行排序,继续把子数组与子数组合并,合并后仍然有序,直到全部合并完,形成有序的数组.*即使数据规模只有上百,归并排序的性能也要优于插入排序算法。
快速排序Quick sort
通过一趟扫描将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列
经典排序算法网址:http://www.cnblogs.com/kkun/archive/2011/11/23/2260312.html
0 0
- 《算法导论》笔记一
- MIT算法导论笔记
- 【算法导论笔记】排序
- 《算法导论》学习笔记
- 《算法导论》学习笔记
- 《算法导论》笔记汇总
- 《算法导论》笔记汇总
- 算法导论笔记第一章
- 算法导论 笔记
- 算法导论学习笔记
- 算法导论笔记
- 《算法导论》笔记:前言
- 算法导论笔记<1>
- 算法导论笔记<2>
- 《算法导论》笔记&习题
- 算法导论重考笔记
- 算法导论 笔记
- 《算法导论》学习笔记
- Ext之Combobox的远程加载数据实例(附前后台代码)
- selenium简介
- 让MySql支持Emoji表情(MySQL中4字节utf8mb4字符保存方法)
- 学习Javascript原型笔记(一)
- SpringMVC实现文件上传
- 算法导论 笔记
- C++如何判断一个string字符串,是否是数字
- 如何判断js中的数据类型
- 安卓-启动Activity的两种方式
- Linux中的atexit函数
- 数据流中的中位数
- 我理解的json 20170220
- 第一部分 flask简介《Flask Web开发:基于Python的Web应用开发实战》
- 更改npm全局模块和cache默认安装位置