
算法和数据结构
Touch&
灵动
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
java数据结构常见的八大排序算法
java数据结构常见的八大排序算法 八大排序介绍 稳定与非稳定: 如果一个排序算法能够保留数组中重复元素的相对位置则可以被称为是稳定的。反之,则是非稳定的。 1、直接插入排序 基本思想原理:顺序把待排序的数据元素按其关键字值的大小插入到已排序数据元素子集合的适当位置。 算法描述: 一般来说,插入排序都采用in-place在数组上实现。具体算法描述如下: 从第一个元素开始,该元素可以认为已经被排序 取出下一个元素,在已经...原创 2020-05-18 15:48:54 · 1852 阅读 · 0 评论 -
数据结构常见的八大排序算法之基数排序
数据结构常见的八大排序算法之归并排序 一、简述 基数排序的发明可以追溯到1887年赫尔曼·何乐礼在打孔卡片制表机(Tabulation Machine), 排序器每次只能看到一个列。它是基于元素值的每个位上的字符来排序的。 对于数字而言就是分别基于个位,十位, 百位或千位等等数字来排序。 基数排序(Radix sort)是一种非比较型整数排序算法,其原理是将整数按位数切割成不同的数字,然后按每个位数分别比较。由于整数也可以表达...原创 2020-05-15 15:42:35 · 626 阅读 · 0 评论 -
数据结构常见的八大排序算法之归并排序
数据结构常见的八大排序算法之归并排序原创 2020-05-14 11:00:47 · 405 阅读 · 0 评论 -
数据结构常见的八大排序算法之堆排序
数据结构常见的八大排序算法之堆排序 一、简介 1991年的计算机先驱奖获得者、斯坦福大学计算机科学系教授罗伯特·弗洛伊德(Robert W.Floyd) 和威廉姆斯(J.Williams) 在1964年共同发明了著名的堆排序算法(Heap Sort)。 堆的定义如下:nn个元素的序列{k1,k2,..,kn},当且仅当满足下关系时,称之为堆。 把此序列对应的二维数组看成一个完全二叉树。那么堆的含义就是:完全...原创 2020-05-13 10:40:35 · 536 阅读 · 0 评论 -
数据结构常见的八大排序算法之希尔排序
数据结构常见的八大排序算法之希尔排序 一、简介 希尔排序(Shell's Sort)是插入排序的一种又称“缩小增量排序”(Diminishing Increment Sort),是直接插入排序算法的一种更高效的改进版本,希尔排序是非稳定排序算法。该方法因D.L.Shell于1959年提出而得名。原理就是:将待...原创 2020-05-07 17:26:27 · 498 阅读 · 0 评论 -
数据结构常见的八大排序算法之直接插入排序
数据结构常见的八大排序算法之直接插入排序 一、简述 直接插入排序是一种最简单的排序算法,直接插入的算法基本思想是:仅有一个元素的序列总是有序的,因此,对n个记录的序列,可从第二个元素开始直接到第n个元素,逐个向有序序列中执行插入操作,从而得到n个元素按关键字有序的序列。一般来说,在含有j-1个元素的有序序列...原创 2020-05-06 14:50:09 · 1453 阅读 · 0 评论 -
数据结构常见的八大排序算法之选择排序
数据结构常见的八大排序算法之选择排序原创 2020-04-30 11:46:42 · 607 阅读 · 0 评论 -
数据结构常见的八大排序算法之快速排序
数据结构常见的八大排序算法之快速排序原创 2020-04-29 17:58:18 · 1077 阅读 · 0 评论 -
数据结构常见的八大排序算法之冒泡排序
数据结构常见的八大排序算法之冒泡排序原创 2020-04-28 11:41:16 · 1518 阅读 · 0 评论