ソートアルゴリズムの選択ソート


咳咳~选択顺位、非常に简単なアルゴリズム...私自身はよく使うので、このコードを书くのは约30秒しかかかりません...当初CVTE面接に参加して、一面の最后に1段のコードを书いて、私のもとの考えは2分で思想を探して、残念ながら书いて书いて书いて殻が詰まりました...面接官は私に时间が多くないことを注意して、そこで私は時間複雑度O(n*logn)のアルゴリズムを放棄し,極めて短い時間で時間複雑度O(n^2)の類似選択ソートのアルゴリズムを直接書いて彼に与えた.性能は高くありませんが、少なくとも彼に私の最も基本的なコード能力を証明しました.たぶん、このコードをすぐに书き上げた上に、面接官自身がniceなので、私は无事に合格しました.
さあ、思い出して、本題を話しましょう~
選択ソート:最も一般的なソートアルゴリズムの1つであり、時間複雑度O(n^2)、空間複雑度O(1)、不安定なソートアルゴリズムである.コード実装:
void SelectSort(int x[], int n) //    ,  
{
  int i, j, iMin, temp;
  for (i=0; i
は、中間変数tempで老けて見えると思いますか?実は私も少しそう思っています=|||...So、异や计算で数値を交换しましょう!4バイトのメモリを節約するだけでなく、詰め込むこともでき、一挙両得です.
void SelectSort(int x[], int n)
{
  int i, j, iMin;                 //          temp
  for (i=0; i