設一個陣列[100],
然後每進来一个数字,就把陣列中相对应的位置+1
ex: 2 2 3 1 1 14
陣列[2]+2
陣列[3]+1
陣列[1]+2
陣列[14]+1
最後在根據陣列的每一個元素裡有幾個數字來輸出
這樣快多了好不好
設一個陣列[100],
然後每進来一个数字,就把陣列中相对应的位置+1
ex: 2 2 3 1 1 14
陣列[2]+2
陣列[3]+1
陣列[1]+2
陣列[14]+1
最後在根據陣列的每一個元素裡有幾個數字來輸出
這樣快多了好不好
不好意思,您用的演算法有一個專有的名字——Counting Sort
顧名思義,它仍然是排序法的一種。因為,只要有將無序的資料轉換成有序的,即可稱之為「排序」。
因此,本人認為您的標題下得實在不大恰當。
還有一點,本人希望您能過目一下:雖然,懂得分享是一件好事,但是還要稍微注意一下用字遣詞。
設一個陣列[100],
然後每進来一个数字,就把陣列中相对应的位置+1
ex: 2 2 3 1 1 14
陣列[2]+2
陣列[3]+1
陣列[1]+2
陣列[14]+1
最後在根據陣列的每一個元素裡有幾個數字來輸出
這樣快多了好不好
不好意思,您用的演算法有一個專有的名字——Counting Sort
顧名思義,它仍然是排序法的一種。因為,只要有將無序的資料轉換成有序的,即可稱之為「排序」。
因此,本人認為您的標題下得實在不大恰當。
還有一點,本人希望您能過目一下:雖然,懂得分享是一件好事,但是還要稍微注意一下用字遣詞。
我覺得它的標題跟內文都很棒 rrrrrrr,強調不能做經典的 comparison sort,這文章哪裡不好,頂多標題加上 "comparison" 就好了唄!
設一個陣列[100],
然後每進来一个数字,就把陣列中相对应的位置+1
ex: 2 2 3 1 1 14
陣列[2]+2
陣列[3]+1
陣列[1]+2
陣列[14]+1
最後在根據陣列的每一個元素裡有幾個數字來輸出
這樣快多了好不好
推個,不過不要用簡體拉
設一個陣列[100],
然後每進来一个数字,就把陣列中相对应的位置+1
ex: 2 2 3 1 1 14
陣列[2]+2
陣列[3]+1
陣列[1]+2
陣列[14]+1
最後在根據陣列的每一個元素裡有幾個數字來輸出
這樣快多了好不好
不好意思,您用的演算法有一個專有的名字——Counting Sort
顧名思義,它仍然是排序法的一種。因為,只要有將無序的資料轉換成有序的,即可稱之為「排序」。
因此,本人認為您的標題下得實在不大恰當。
還有一點,本人希望您能過目一下:雖然,懂得分享是一件好事,但是還要稍微注意一下用字遣詞。
其實這個標題很恰當,看這個人使用C++應該是要強調不要使用<algorithm>中的sort