概述: 是一种非比较型整数排序算法,其原理是将整数按位数切割成不同的数字,然后按每个位数分别比较。简单来说就是把数组中的每一个数按照个十百千万来进行一轮一轮比较,最后排列出正确顺序


    • 获取数组中最大数,得以确认元素中最大数为多少位
    • 创建一个二维数组,用来保存位数, 二维数组的下标代表当前位数的大小,二维数组的值代表待排序的元素
    • 创建一个临时数组来记录,相同位数的个数
    • 根据最大数的位数,循环遍历
      • 根据数组的长度遍历获取每一个元素的值,并插入到二维数组中,并按位数值记录在临时数组中,相同位数插入一次+1一次
      • 根据临时数组的下标是否有值,求出二维数组插入下标,再通过临时数组下标的值的大小,确认二维数组插入下标里存在几个值
      • 覆盖原始数组
    • 继续循环遍历,只能最大位数遍历结束
    • 排序完毕