摘要: 概览 定义 快速排序(英语:Quicksort),又称分区交换排序(partition-exchange sort),简称快排,一种排序算法,最早由东尼·霍尔提出。在平均状况下,排序 快速排序(Quicksort)是对冒泡排序的一种改进。 快速排序由C. A. R.Hoare在1960年提出。它的基 阅读全文
posted @ 2022-06-11 23:09 小林野夫 阅读(831) 评论(0) 推荐(0)
摘要: 概览 定义 冒泡排序(英语:Bubble Sort)又称为泡式排序,是一种简单的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果它们的顺序错误就把它们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢“浮” 阅读全文
posted @ 2022-06-11 19:30 小林野夫 阅读(467) 评论(0) 推荐(0)
摘要: 概览 算法的思想 穷举(枚举)算法思想; 递推算法思想; 递归算法思想: 分治算法思想: 概率算法思想; 算法分类 按辅助空间分类 比较式排序法 比较排序法不需要太多的辅助空间 之前学习的冒泡、选择、插入、归并、快速、希尔、堆排序,都是基于比较的排序口平均时间复杂度目前最低是o(nlogn) 分配式 阅读全文
posted @ 2022-06-11 18:16 小林野夫 阅读(41) 评论(0) 推荐(0)
摘要: 背景 希尔排序(Shell's Sort)是插入排序的一种又称“缩小增量排序”(Diminishing Increment Sort),是直接插入排序算法的一种更高效的改进版本。 希尔排序是非稳定排序算法。 该方法因D.L.Shell 于1959 年提出而得名。 定义 希尔排序︰先将待排序表分割成若 阅读全文
posted @ 2022-06-11 18:15 小林野夫 阅读(204) 评论(0) 推荐(0)
摘要: 概览 插入排序法(打牌) 算法思想:每次将一个待排序的元素按其关键字大小插入到前面已排好序的子序列中,直到全部记录插入完成。 例如:元素13要排序时候,可以认为13之前元素都已经排序完成,此时只要把13与之前元素一 一比较,然后找到合理位置插入。 代码 空间复杂度:(O(1)时间复杂度︰ O(n)~ 阅读全文
posted @ 2022-06-11 11:44 小林野夫 阅读(393) 评论(0) 推荐(0)
原文链接:https://www.cnblogs.com/cdaniu/