初级排序算法

作者: 死亡中走出来 | 来源:发表于2020-02-28 21:56 被阅读0次

有几个问题,为什么要学习初级排序算法呢?初级排序算法有哪些呢?如何实现呢?

第一个问题,学习目的,主要有以下三点:

1.我们将通过它们熟悉一些术语和简单的技巧

2.这些简单的算法在某些情况下比我们之后将会讨论的复杂算法更有效

3.以后你会发现,它们有助于我们改进复杂算法的效率。

第二个问题,初级排序算法有选择排序,插入排序,希尔排序。

选择排序概念:首先就,找到数组中最小的那个元素,其次,将它和数组的第一个元素交换位置(如果第一个元素是最小元素那么它就和自己交换)。再次,在剩下的元素中找到最小的元素,将它与数组的第二个元素交换位置。如此往复,直到将整个数组排序。

插入排序是为了给要插入的元素腾出空间,我们需要将其余所有元素在插入之前都向右移动一位。

希尔排序是基于插入排序的快速的排序算法,希尔排序的思想是使数组中任意间隔为h的元素都是有序的。这样的数组被称为h有序数组。在进行排序时,如果h很大,我们就能将元素移动到很远的地方,为实现更小的h有序创造方便。用这种方式,对于任意以1结尾的h序列,我们都能够将数组排序。

实现如下图所示:

实现随后会放到github中,会在简书中给出相关链接。

相关文章

  • 算法——初级排序算法

    最近,在通过《算法4》这本书来重新学习一下算法,从最初级的排序算法。初级的排序算法有3种:选择排序、插入排序、希尔...

  • 《算法》-排序[初级排序算法]

    《算法》系列,是面向《算法》第四版这本书进行学习,会去除繁琐的文字叙述,会从以下两个方面去理解一个算法: 1、...

  • 『算法』之 初级排序算法总结

    本篇文章同时收录在我的个人博客:『算法』之 初级排序算法总结 选择排序 一种最简单的排序算法:首先,找到数组中最小...

  • 《算法4》2.1 - 选择排序算法(Selection Sort

    选择排序算法(Selection Sort)是排序算法的一种初级算法。虽然比较简单,但是基础,理解了有助于后面学习...

  • 逻辑之美(2)_选择排序

    开篇 上篇我们好好聊了聊冒泡排序,这篇我们来聊聊另一种初级排序算法——选择排序 正文 选择排序的算法思路同样很简单...

  • (三)排序

    1 初级排序算法 排序算法关注的主要是重新排列数组元素,其中每个元素都有一个主键。排序算法是将所有元素主键按某种方...

  • 算法初级(排序算法)

    结构化编程&伪代码 说到排序算法,就要先讲一下什么是结构化编程,总结一下来说,结构化编程有以下特点:1.一行一行执...

  • 初级排序算法

    选择排序:首先找到数组中最小的那个元素,其次将它和数组第一个元素交换位置(如果第一个元素就是最小元素那么它就和自己...

  • 排序算法(初级)

    一、概念 输入:一个算法必须有0个或以上的输入量 输出:一个算法应该有一个或以上的输出量,输出量是算法计算的结果 ...

  • 算法 -- 初级排序

    程序从标准输入中读取数据(一系列大写字母),并保存在数组中 将数组的元素从小到大排序,并输出结果 模板 N:总是表...

网友评论

    本文标题:初级排序算法

    本文链接:https://www.haomeiwen.com/subject/pmbeactx.html