美文网首页
《啊哈算法》读书笔记

《啊哈算法》读书笔记

作者: bluescorpio | 来源:发表于2017-05-07 11:13 被阅读117次
  1. 桶排序,需要的数组要比总的元素多1.
  2. 冒泡排序的基本思想是:每次比较两个相邻的元素,如果它们的顺序错误就把它们交换过来。
  3. 冒泡排序的原理是:每一趟只能确定将一个数归位。即第一趟只能确定将末位上的数归位。如果有n个数进行排序,只需将n-1个数归位。
  4. for(i=1; i<=n-1; i++){for(j=1; j<=n-i; j++)}
  5. 冒泡排序的时间复杂度是O(N平方)。
  6. 快速排序每次排序的时候设置一个基准点,将小于等于基准点的数全部放到基准点的左边,将大于等于基准点的数全部放到基准点的右边。
  7. 快速排序的最差时间复杂度是O(N平方),它的平均时间复杂度为O(NlogN)。
  8. 队列是一种特殊的线性结构,它只允许在队列的首部(head)进行删除操作,这称为"出队",而在队列的尾部(tail)进行插入操作,这称为"入队"。当队列中没有元素时(即head==tail),称为空队列。
  9. 遍历就是指把图的每一个顶点都访问一次。
  10. 深度优先遍历的主要思想就是:首先以一个未被访问过的顶点作为起始顶点,沿当前顶点的边走到未访问过的顶点;当没有未访问过的顶点时,则回到上一个顶点,继续试探访问别的顶点,直到虽有的顶点都被访问过。深度优先遍历是沿着图的某一条分支遍历直到末端,然后回溯,再沿着另一条进行同样的遍历,直到所有的顶点都被访问过为止。
  11. 广度优先遍历的主要思想就是:首先以一个未被访问过的顶点作为起始顶点,访问其所有相邻的顶点,然后对每个相邻的顶点,再访问它们相邻的未被访问过的顶点,直到所有顶点都被访问过,遍历结束。
  12. 图就是有N个顶点和M条边组成的集合。
  13. 树是指任意两个节点间有且只有一条路径的无向图。
  14. 二叉树的特点是每个节点最多有两个儿子。
  15. 父节点比子节点小,这样的二叉树称为最小堆。 如果所有父节点都比子节点大,则称为最大堆。
  16. 创建堆的算法:把n个元素建立一个堆,首先可以将这n个节点以自顶向下、从左到右的方式从1到n编码。这样可以把这n个节点转换成为一颗完全二叉树。紧接着从最后一个非叶节点(节点编号为n/2)开始到根节点(节点编号为1),诸葛扫描所有的节点,根据需要将当前节点向下调整。直到当前节点为根节点的子树符合堆的特性。
  17. 堆排序的思想:先建立最小堆,然后每次删除顶部元素并将顶部元素输出或者放入一个新的数组中,直到堆为空为止。最终的输出或者存放在新数组中的数就已经是排序好的。

相关文章

  • 《啊哈算法》读书笔记

    桶排序,需要的数组要比总的元素多1. 冒泡排序的基本思想是:每次比较两个相邻的元素,如果它们的顺序错误就把它们交换...

  • 《啊哈!算法》啊哈磊-PDF高清完整版-免费下载

    《啊哈!算法》啊哈磊-PDF高清完整版-免费下载 《啊哈!算法》啊哈磊-PDF高清完整版-免费下载 下载地址:网盘...

  • 啊哈,算法

    其实我看书的顺序应该是正常而又奇怪的,我先抱着算法导论看过一遍自认为看懂了(其实并不怎么懂),而且又开始拿起算法第...

  • 啊哈,算法!

    Intro 啊哈,算法封面.pngt1.这篇文章记录我的一个学习和心得t2.需要c语言基础t3.需要数据结构和算法...

  • 啊哈!算法

    《啊哈!算法》是一本充满智慧和趣味的算法入门书。没有枯燥的描述,没有难懂的公式,一切以实际应用为出发点,通过幽默的...

  • 参考书籍

    《啊哈! 算法》 《算法导论》(原书第三版)

  • 《啊哈!算法》.PDF

    简介 这不过是一本有趣的算法书而已。和别的算法书比较,如果硬要说它有什么特点的话,那就是你能看懂它。 这是一本充满...

  • 啊哈(算法)挑战

    以下是几个简单的算法解析,你也可以只看题目,进行挑战,希望有更高效的算法啊哈挑战官网 题目:153是一个非常优美的...

  • 《啊哈算法》笔记(一)

    1 桶排序2 冒泡排序3 快速排序4 队列,栈,链表5 弗洛伊德算法 -最短路径:求两个城市之间的最短路径6 迪杰...

  • 啊哈(算法)挑战:题

    让我们挑战几个简单的算法,以下几个算法1~7是一星?难度,第8个是二星??难度,很简单,快来挑战一下吧啊哈挑战官网...

网友评论

      本文标题:《啊哈算法》读书笔记

      本文链接:https://www.haomeiwen.com/subject/jyjutxtx.html