基础算法
文章平均质量分 92
崔小花o
一只刚回行走的程序猿,要跑,要飞奔,要飞....专注于移动开发,喜欢和大家交流,希望能够共同提高,共同进步
展开
-
排序算法(02)— 快速排序算法
快速排序算法一、概述快速排序(Quick Sort)是由东尼·霍尔(Tony Hoare)所发展的一种排序算法。他在形式化方法理论以及ALGOL60编程语言的发明中都有卓越的贡献。二、算法思想2.1 基本思想快速排序的基本思想是:通过一趟排序,将待排记录分隔成独立的两部分,其中一部分的记录的关键字总是比另一部分记录的关键字小,则可以分别对这两部分记录继续进行排序,直到整个序列有序。原创 2018-11-09 17:49:35 · 1925 阅读 · 0 评论 -
排序算法(03)— 希尔排序
一、概述希尔排序(Shell Sort) 是插入排序的一种又称“缩小增量排序”(Diminishing Increment Sort),是 直接插入排序 算法的一种更高效的改进版本。希尔排序是 非稳定排序算法。该方法因D.L.Shell于1959年提出而得名。在这之前的排序算法的时间复杂度基本都是O(n2),希尔排序是算法是突破这个时间复杂度的第一批算法之一。二、基本思想我们之前讲过 直接...原创 2018-11-15 17:33:09 · 1938 阅读 · 0 评论 -
排序算法(01)— 三种简单排序(冒泡、插入、选择)
一、概述排序是数据处理中十分常见且核心的操作,虽说实际项目开发中很小几率会需要我们手动实现,毕竟每种语言的类库中都有n多种关于排序算法的实现。但是了解这些精妙的思想对我们还是大有裨益的。1.1 排序的基本概念和分类假设含有n个记录的序列为{r1,r2,…,rn},其相应的关键字分别为{k1,k2,…,kn},需确定1,2,。。。。,n的一种排列p1,p2,…,pn,使其相应的关键字满足kp1...原创 2018-11-15 12:20:56 · 2508 阅读 · 1 评论