排序算法 Sort Algorithm

排序算法是将一系列数据根据指定的顺序进行排列的过程

排序算法的分类:

  • 内部排序:指将需要处理的所有数据都加载到内存中进行排序

    • 插入排序

      • 直接插入排序
      • 希尔排序
    • 选择排序
      • 简单选择排序
      • 堆排序
    • 交换排序
      • 冒泡排序
      • 快速排序
    • 归并排序
    • 基数排序
  • 外部排序: 数据量过大,需要借助外部存储器来排序

对排序算法来说,一般有两种基本操作:比较元素大小和交换元素位置,所以当我们分析排序算法效率的时候,比较和交换的次数也应该被考虑在内

排序算法的稳定性:

如果在列表中存在等值的元素,经过排序后,等值的元素前后顺序不发生改变,则这个算法是稳定的

相关章节
第一节 简述
第二节 稀疏数组 Sparse Array
第三节 队列 Queue
第四节 单链表 Single Linked List
第五节 双向链表 Double Linked List
第六节 单向环形链表 Circular Linked List
第七节 栈 Stack
第八节 递归 Recursion
第九节 时间复杂度 Time Complexity
第十节 排序算法 Sort Algorithm
第十一节 冒泡排序 Bubble Sort
第十二节 选择排序 Select Sort
第十三节 插入排序 Insertion Sort
第十四节 冒泡排序,选择排序和插入排序的总结
第十五节 希尔排序 Shell’s Sort
第十六节 快速排序 Quick Sort
第十七节 归并排序 Merge Sort

算法与数据结构(排序算法概述)相关推荐

  1. 数据结构---排序算法的总结

    数据结构-排序算法的总结 分类 冒泡排序,时间复杂度O(n x n),空间复杂度O(1),稳定 简单选择排序,时间复杂度O(n x n),空间复杂度O(1),不稳定 希尔排序,时间复杂度O(n^1.3 ...

  2. 【数据结构排序算法系列】数据结构八大排序算法

    排序算法在计算机应用中随处可见,如Windows操作系统的文件管理中会自动对用户创建的文件按照一定的规则排序(这个规则用户可以自定义,默认按照文件名排序)因此熟练掌握各种排序算法是非常重要的,本博客将 ...

  3. 数据结构-排序算法总结与感悟

    数据结构-排序算法总结 一,排序的基本概念 排序:有n个记录的序列{R1,R2,-,Rn},其相应关键字的序列是{K1,K2, -,Kn },相应的下标序列为1,2,-, n.通过排序,要求找出当前下 ...

  4. C++基础-介绍·数据结构·排序·算法

    C++基础-介绍·数据结构·排序·算法 特点 使用方向 RPC Data Struct 数据结构 栈 Stack 内存分配中的栈 队列 List 数组 Array 链表 LinkTable 树 Tre ...

  5. 数据结构-排序算法(c语言实现篇)

    数据结构-排序算法(c语言实现篇) 排序算法是非常常用的算法,从介绍排序的基本概念,到介绍各种排序算法的思想.实现方式以及效率分析.最后比较各种算法的优劣性和稳定性. 1 排序的概念及应用 1.1 排 ...

  6. 算法与数据结构 -- 排序和查找(五)

    一.排序算法 冒泡排序 选择排序 插入排序 希尔排序 快速排序 归并排序 堆排序 桶排序 二.算法实现 冒泡排序 每次比较相邻两个元素,若不符合大小关系,则交换元素位置.让最小的(或最大)元素在列表尾 ...

  7. 数据结构之排序算法:内部排序算法的应用与比较

    排序算法:内部排序算法的应用与比较 思维导图: 比较: 应用: 思维导图: 比较: 应用:

  8. 冒泡排序算法和选择排序算法比较

      冒泡排序算法详细内容见→冒泡排序算法.   选择排序算法详细内容见→选择排序算法.   冒泡排序算法和选择排序算法的区别: 冒泡排序是比较相邻位置的两个数:而选择排序是按顺序比较,找出最大值或者最 ...

  9. 算法基础:排序算法之冒泡排序

    算法基础:排序算法之冒泡排序 实现:数列有序排序 思想:已知一个数列,令数列中相邻的两个元素一一做比较,按照小大的顺序(或从大到小的顺序),如果前一个数比后一个数大(或后一个数比前一个数大),则互换( ...

  10. 【数据结构、算法】八大排序算法概述(算法复杂度、稳定性)

    前言   排序是计算机程序设计中一个非常重要的操作,它将一个数据元素(或记录)的任意序列重新排列成一个按关键字有序的序列.在有序的序列中查找元素的效率很高,(例如,折半查找法的平均查找长度为log2( ...

最新文章

  1. 全球首个安全有效新冠疫苗:陈薇院士团队研制,登上《柳叶刀》
  2. beautysoup 爬虫
  3. (详细)Hibernate框架的搭建,Hibernate的CRUD操作(一)
  4. leetcode57. 插入区间
  5. Rulo扫地机器人app_米家扫拖机器人1T测评|米家扫拖机器人1T的3D避障实际效果如何?...
  6. 三维点云学习(2)中-Kd-tree (k-dimensional tree)
  7. 操作基本数据类型的流/数据流
  8. linux编译fdk aac,编译x264和fdk-aac
  9. URI 、URL 和 URN
  10. java如何删除文件夹_Java如何删除文件夹和子文件夹
  11. 独家发布全能在线语言翻译工具QTranslate v6.8.0 汉化中文版
  12. 3dmax模型导入unity
  13. MySQL数据库创建表一系列操作
  14. MiKTeX安装及添加到环境变量
  15. 电商ERP如何接入快递鸟电子面单API?
  16. 巨帧(jumbo frame)
  17. background各个属性详解
  18. 杰里之AC695 系列 AC695X_soundbox_sdk_release_0.0.2 版本省空间【篇】
  19. Android studio修改svn地址的问题
  20. 测试分析及调优(转)

热门文章

  1. vue 不会热启动_使用PM2搭建在线vue.js开发环境(以守护进程方式热启动)
  2. 双圆环环布带系法图解_【图】板鞋系鞋带 板鞋鞋带的系法有几种
  3. Pytorch使用过程错误与解决 -汇总~
  4. caffe的prototxt文件
  5. Ubuntu nginx 配置实例
  6. BP神经网络python代码详细解答(来自原文翻译)
  7. python 一行太长_10条很棒的Python一行代码
  8. 90. Leetcode 剑指 Offer 62. 圆圈中最后剩下的数字 (动态规划-基础题)
  9. 9-spark学习笔记-sparkstreaming
  10. 机器学习应用方向(三)~可解释机器学习Explainable ML/Explainable AI