快速排序Quick Sort 快速排序的思路是依据一个“中值”数据项来把数据表分为两半:小于中值的一半和大于中值的一半, 然后每部分分别进行快速...
归并排序Merge Sort 下面我们来看看分治策略在排序中的应用 归并排序是递归算法, 思路是将数据表持续分裂为两半, 对两半分别进行归并排序...
希尔排序Shell Sort 我们注意到插入排序的比对次数, 在最好的情况下是O(n), 这种情况发生在列表已是有序的情况下, 实际上, 列表越...
插入排序Insertion Sort 插入排序时间复杂度仍然是O(n2), 但算法思路与冒泡排序、 选择排序不同 插入排序维持一个已排好序的子列...
排序:冒泡排序Bubble Sort 冒泡排序的算法思路在于对无序表进行多趟比较交换, 每趟包括了多次两两相邻比较, 并将逆序的数据项互换位置,...
二分查找 那么对于有序表, 有没有更好更快的查找算法? 在顺序查找中, 如果第1个数据项不匹配查找项的话, 那最多还有n-1个待比对的数据项 那...
探索迷宫 将海龟放在迷宫中间,如何能找到出口 首先, 我们将整个迷宫的空间( 矩形)分为行列整齐的方格,区分出墙壁和通道。给每个方格具有行列位置...
复杂递归问题:汉诺塔 汉诺塔问题是法国数学家Edouard Lucas于1883年, 根据传说提出来的。 传说在一个印度教寺庙里, 有3根柱子,...
递归可视化:分形树 Python的海龟作图系统turtle modulePython内置,随时可用,以LOGO语言的创意为基础其意象为模拟海龟在...