Can you summarize the following document?
        
  當輸入的元素是formula_6個formula_7到formula_8之間的整數時,它的執行時間是formula_9。計數排序不是比較排序,因此不被 formula_10的下界限制。  由於用來計數的陣列formula_1的長度取決於待排序陣列中資料的範圍(等於待排序陣列的最大值與最小值的差加上1),這使得計數排序對於資料範圍很大的陣列,需要大量時間和記憶體。例如:計數排序是用來排序0到100之間的數字的最好的演算法,但是它不適合按字母順序排序人名。但是,計數排序可以用在基數排序演算法中,能夠更有效的排序資料範圍很大的陣列。  通俗地理解,例如有10個年齡不同的人,統計出有8個人的年齡比A小,那A的年齡就排在第9位,用這個方法可以得到其他每個人的位置,也就排好了序。當然,年齡有重複時需要特殊處理(保證穩定性),這就是為什麼最後要反向填充目標陣列,以及將每個數字的統計減去1。演算法的步驟如下:
計數排序(Counting sort)是一種穩定的線性時間排序演算法。該演算法於1954年由 Harold H. Seward 提出。計數排序使用一個額外的陣列formula_1,其中第i個元素是待排序陣列formula_2中值等於formula_3的元素的個數。然後根據陣列formula_1來將formula_2中的元素排到正確的位置。