排序:
默认
按更新时间
按访问量

涨姿势,图文带你了解 8 大排序算法

转载自   涨姿势,图文带你了解 8 大排序算法 排序算法可以分为内部排序和外部排序,内部排序是数据记录在内存中进行排序,而外部排序是因排序的数据很大,一次不能容纳全部的排序记录,在排序过程中需要访问外存。 常见的内部排序算法有:插入排序、希尔排序、选择排序、冒泡排序、归并排序、快速排序、堆排...

2018-10-04 12:15:22

阅读数:31

评论数:0

漫画:什么是堆排序

转载自  漫画:什么是堆排序 在上一篇漫画中,小灰介绍了 二叉堆 这样一种强大的数据结构: 漫画:什么是二叉堆?(修正版) 那么,这个二叉堆怎样来使用呢?我们这一期将会详细讲述。     让我们回顾一下二叉堆和最大堆的特性: 1.二叉堆本质上是一种完全二叉树 2.最大堆的堆...

2018-10-01 23:58:09

阅读数:15

评论数:0

漫画:什么是鸡尾酒排序

转载自   漫画:什么是鸡尾酒排序 那么,鸡尾酒排序又是何方神圣呢?我们这一期将会详细讲述。 让我们首先来回顾一下冒泡排序的思想: 冒泡排序的每一个元素都可以像小气泡一样,根据自身大小,一点一点向着数组的一侧移动。算法的每一轮从都是从左到右比较元素,进行单向的位置交换。 那么鸡尾酒...

2018-09-27 19:09:46

阅读数:9

评论数:0

这些排序算法的使用时机,你都知道吗?

转载自   这些排序算法的使用时机,你都知道吗? 概述 排序有内部排序和外部排序,内部排序是数据记录在内存中进行排序,而外部排序是因排序的数据很大,一次不能容纳全部的排序记录,在排序过程中需要访问外存。 我们这里说说八大排序就是内部排序。   当n较大,则应采用时间复杂度为O(nlo...

2018-09-23 11:19:28

阅读数:28

评论数:0

漫画:什么是冒泡排序

转载自   漫画:什么是冒泡排序 什么是冒泡排序? 冒泡排序的英文Bubble Sort,是一种最基础的交换排序。 大家一定都喝过汽水,汽水中常常有许多小小的气泡,哗啦哗啦飘到上面来。这是因为组成小气泡的二氧化碳比水要轻,所以小气泡可以一点一点向上浮动。   而我们的冒泡排序之所以叫做冒...

2018-07-23 20:34:11

阅读数:141

评论数:0

算法九之基数排序

一、基数排序 (1)基数排序的简介   基数排序不同于其他的排序算法,它不是基于比较的算法。基数排序是一种借助多关键字排序的思想对单逻辑关键字进行排序的方法。它是一种稳定的排序算法。    通常用于对数的排序选择的是最低位优先法,即先对最次位关键字进行排序,再对高一位的关键字进行排序,以此类推。 ...

2017-11-26 17:58:15

阅读数:52

评论数:0

算法八之归并排序

一、归并排序原理   归并排序(MERGE-SORT)是建立在归并操作上的一种有效的排序算法,该算法是采用分治法(Divide and Conquer)的一个非常典型的应用。将已有序的子序列合并,得到完全有序的序列;即先使每个子序列有序,再使子序列段间有序。若将两个有序表合并成一个有序表,称为二路...

2017-11-26 17:56:57

阅读数:55

评论数:0

算法七之希尔排序

一、希尔排序 (1)简介   希尔排序(Shell Sort)是插入排序的一种。也称缩小增量排序,是直接插入排序算法的一种更高效的改进版本。希尔排序是非稳定排序算法。该方法因DL.Shell于1959年提出而得名。   希尔排序是把记录按下标的一定增量分组,对每组使用直接插入排序算法排序;随着增量...

2017-11-26 17:56:55

阅读数:57

评论数:0

算法六之直接插入排序

一、直接插入排序基本思想 直接插入排序(straight insertion sort)的做法是:       每次从无序表中取出第一个元素,把它插入到有序表的合适位置,使有序表仍然有序。       第一趟比较前两个数,然后把第二个数按大小插入到有序表中; 第二趟把第三个数据与前两个数从后向前扫...

2017-11-26 17:56:21

阅读数:57

评论数:0

算法五之快速排序

一、快速排序(Quicksort)思想        设要排序的数组是A[0]……A[N-1],首先任意选取一个数据(通常选用数组的第一个数)作为关键数据,然后将所有比它小的数都放到它前面,所有比它大的数都放到它后面,这个过程称为一趟快速排序。值得注意的是,快速排序不是一种稳定的排序算法,也就是说...

2017-11-26 17:56:16

阅读数:47

评论数:0

算法四之冒泡排序

一、冒泡排序(Bubble Sort)思想 (1)冒泡排序(Bubble Sort),是一种计算机科学领域的较简单的排序算法。     它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。 这个...

2017-11-26 17:56:14

阅读数:53

评论数:0

算法三之堆排序

一、堆(Heap)定义 (1)n个关键字序列Kl,K2,…,Kn称为(Heap),当且仅当该序列满足如下性质(简称为堆性质):        k(i)        当然,这是小根堆,大根堆则换成>=号。 (2)k(i)相当于二叉树的非叶子结点,K(2i)则是左子节点,k(2i+1)是右...

2017-11-26 17:56:09

阅读数:46

评论数:0

算法二之树形选择排序

一、树形选择排序的基本思想 (1) 树形选择排序又称锦标赛排序(Tournament Sort),是一种按照锦标赛的思想进行选择排序的方法。首先对n个记录的关键字进行两两比较,然后在n/2个较小者之间再进行两两比较,如此重复,直至选出最小的记录为止。   (2) 树形选择排序(Tree Selec...

2017-11-26 17:56:06

阅读数:119

评论数:0

算法一之简单选择排序

一、  选择排序的思想       选择排序的基本思想是:每一趟在n-i+1(i=1,2,…n-1)个记录中选取关键字最小的记录作为有序序列中第i个记录。基于此思想的算法主要有简单选择排序、树型选择排序和堆排序。       简单选择排序的基本思想:第1趟,在待排序记录r[1]~r[n]中选出最小...

2017-11-26 17:56:03

阅读数:54

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭