常见排序算法导读(1)[概览]

排序算法有很多,但常见的也就9种。下面首先给出本人用LibreOffce画的两张表,做一个最简单直接的总结,然后再逐一展开讨论。 (注:下面的表2可谓面试必备,强烈推荐牢记于心。)

o 表1 – 常见排序算法时间复杂度和空间复杂度对比

《常见排序算法导读(1)[概览]》

o 表2 – 常见排序算法简表

《常见排序算法导读(1)[概览]》

1. 排序算法究竟有好多?

A:这里,截图如下:

《常见排序算法导读(1)[概览]》

 一看就挺吓人的,所以掌握最基础的9种排序算法就够了。

2. 为什么要学排序算法?

A: 学过数据结构的同学都知道,程序=数据+算法,而程序的两大任务就是描述数据和处理数据。一个程序要跑起来,必然离不开算法。而排序算法,在数据处理中被广泛使用,尤其是应用于事务处理中。例如,在念中学的时候,每次半期考或者期末考试后,我的班主任老师都会把所有学生的考试成绩汇总起来,然后按照成绩总分数从高到低排序。在没有计算机的那个年代,手工排序得花费我的老师谢先生至少1天的心血,实在是太不容易。 现在有了计算机,只要录入完毕,分分钟搞定! 一句话,排序实在是太有用了。

3. 什么是排序(Sorting)?

A: 简单地说,排序就是将一组杂乱无章的数据按照一定的规律顺次排列起来。 没有排序之前,数据杂乱无章;完成排序之后,数据井然有序。 或升序,或降序,你看与不看,都齐刷刷排好了放在那里。那么,什么是排序算法?维基百科对排序算法是这样解释滴:

A sorting algorithm is an algorithm that puts elements of a list in a certain order. 

 

在正式介绍常见排序算法之前,有必要先普及一下基本概念,比如什么是算法,什么是算法复杂度等等。好了,今天就到这儿,欲知后事如何,且听下回分解。

    原文作者:veli
    原文地址: https://www.cnblogs.com/idorax/p/6529420.html
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞