
Algorithm
文章平均质量分 96
立杰说
自己搭建的博客:https://qwerty200696.github.io/
CSDN也会不定期更新。
展开
-
算法导论详解(1) 第二章算法基础+python实现
第二章 算法基础 伪码说明 数组A[1,…,n]长度为n的待排序序列。 注意,书中的下标都是从1开始的。python中是从0开始的。 伪码中,A的长度用A.length表示。python中使用len(A)表示。 缩进表示块结构。提高代码清晰度。 while, for, repeat-until 在循环结束后,循环计数器仍然保持其值。 符号“//”后面是注释。 数组元素通过“数组名[下标原创 2017-12-13 13:43:12 · 585 阅读 · 0 评论 -
算法导论详解(2) 第三章函数的增长
本文是《算法导论》第三章:函数的增长的学习笔记。 没有涉及到具体的算法。 主要内容有: - 五种渐近记号的表示 - 常用的函数与标记原创 2018-01-07 20:19:40 · 1416 阅读 · 0 评论 -
算法导论详解(3) 第四章最大子数组+矩阵乘法+Python实现
本章讲解更多关于分治策略的算法。第一个算法是求解最大子数组的问题,然后是求解n×nn\times n矩阵乘法问题的分治算法,最后介绍了主方法。 分治策略简介 分治策略在每层递归时都有三个步骤: - 分解原问题为若干子问题;子问题的形式与原问题一样,只是规模更小。 - 解决这些子问题,递归地求解各子问题。如果子问题的规模足够小,则停止递归,直接求解。 - 合并这些子问题的解成原问题原创 2018-01-08 18:26:47 · 533 阅读 · 0 评论 -
算法导论详解(5) 第六章 堆排序
在第二章介绍了两种排序算法,第六章将介绍第三种排序算法:堆排序(heapsort),以及基于堆排序的优先队列。原创 2018-02-02 13:19:48 · 551 阅读 · 0 评论 -
算法导论详解(6) 第七章 快速排序
快速排序简介 快排最坏情况O(n2)O( n^2 ),但平均效率O(nlgn)O(n lg n),而且O(nlgn)O(n lg n)隐含的常数因子很小,快排可以说是最快的排序算法,并非浪得虚名。另外它还是原址排序。原创 2018-02-02 13:22:52 · 338 阅读 · 0 评论 -
算法导论详解(7) 第八章 线性排序算法
任何比较排序在最坏情况下都要经过Θ(nlgn)\Theta(n\text{lg}n)次比较。本文介绍三种线性时间排序的算法:计数排序,基数排序以及桶排序。因此,这些都不属于比较排序。原创 2018-02-02 13:24:17 · 416 阅读 · 0 评论 -
算法导论详解(8) 第十章 基本数据结构
本章介绍几种基本的结构:栈、队列、链表和有根树。原创 2018-02-02 13:25:28 · 755 阅读 · 0 评论 -
算法导论详解(9) 第十一章 散列表
散列表(hash table,也叫哈希表),支持INSERT、SEARCH、DELETE操作。散列表可以使得在表小的情况下仍能够保存数据,并且能够在常数时间O(1)内完成查询。原创 2018-02-02 13:26:48 · 1331 阅读 · 0 评论