C++並べ替えシリーズ(二)交換並べ替えの簡単な並べ替え

2715 ワード

本文は筆者が個人の理解に基づいて書いたので、間違いは避けられないので、レンガを撮ることを歓迎します!
任意に転載、修正することができて、転載する時出典を明記するかどうか、あなたによって決まります!
交換ソートは交換ソートの中で最も簡単で、最も理解しやすいソートアルゴリズムであり、人の習慣的な思考に近いはずだ.データ全体をスキャンし、0番目の要素から、以降の要素と1つずつ比較し、ソートルール(小さいものから大きいものまたは大きいものから小さいもの)に従って順番を交換し、a番目の要素を比較した後、a+1番目の要素を比較します.
 1 template <typename T>

 2 void swap(T& lhs, T& rhs)

 3 {

 4     T tmp = lhs;

 5     lhs = rhs;

 6     rhs = T;

 7 }

 8 

 9 template <template T>

10 void simple_exchange_sort(T v[], const int sz)

11 {

12     for (int i=0; i < sz-1; ++i)

13     {

14         for (int j=i+1; j < sz; ++j)

15         {

16             if (v[i] > v[j])

17             {

18                 swap<T>(v[i], v[j]);

19             }

20         }

21     }

22 }