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


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

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

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

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

    A:这里,截图如下:

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

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

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

    3. 什么是排序(Sorting)?

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

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

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

  • 相关阅读:
    CentOS
    Docker
    Chart的简单使用
    DataGridView中间插入数据行
    获取每个月的固定的第n个星期几
    设置只能开启一个程序实例
    DataContext与实体类
    Attribute
    Delegate
    Event
  • 原文地址:https://www.cnblogs.com/idorax/p/6529420.html
Copyright © 2020-2023  润新知