C# で開発されたソートアルゴリズムの詳細な説明

C# で開発されたソートアルゴリズムの詳細な説明

C# 言語は、まだ比較的一般的なものです。ここでは、バブル ソート、選択ソート、挿入ソート、シェル ソートなど、C# で開発されたソート アルゴリズムを主に紹介します。

バブルソート

言語を学ぶには、データ構造とアルゴリズムを学ぶのに多大な労力が必要です。

  1. システムの使用;
  2.  
  3. 名前空間 BubbleSorter
  4. {
  5. パブリッククラス BubbleSorter
  6. {
  7. パブリック void ソート(int[] リスト)
  8. {
  9. 整数 i,j, 温度;
  10. bool完了= false ;
  11. 1 = 1 ;
  12. while((j<list.Length)&&(!done))
  13. {
  14. 完了= true ;
  15. ( i = 0 ; i < list.Length - j ; i++)の場合
  16. {
  17. (リスト[i]>リスト[i+1])の場合
  18. {
  19. 完了= false ;
  20. temp =リスト[i];
  21. リスト[i]=リスト[i+1];
  22. リスト[i+1] = temp;
  23. }
  24. }
  25. j++;
  26. }
  27.  
  28. }
  29. }
  30. パブリッククラス MainClass
  31. {
  32. パブリック静的 void Main()
  33. {
  34. int[] iArrary =新しいint[]{1,5,13,​​6,10,55,99,2,87,12,34,75,33,47};
  35. バブルソーターsh = new BubbleSorter();
  36. sh.Sort(i配列);
  37. (int m = 0 ; m < iArrary.Length; m++)の場合
  38. Console.Write("{0} ",iArrary[m]);
  39. コンソールに行を書き込む
  40. }
  41. }
  42. }

選択ソート

ソートアルゴリズムの開発には C# を使用しました。 C# 言語の学習者に何らかのメリットをもたらすことができれば幸いです。言語を学ぶには、データ構造とアルゴリズムを学ぶのに多大な労力が必要であることを忘れないでください。

  1. システムの使用;
  2.  
  3. 名前空間SelectionSorter
  4. {
  5. パブリッククラス SelectionSorter
  6. {
  7. プライベート int min;
  8. パブリック void ソート(int[] リスト)
  9. {
  10. (int i = 0 ; i < list.Length - 1; i++)の場合
  11. {
  12. 最小値= i;
  13. (int j = i + 1; j < list.Length; j++)の場合
  14. {
  15. (リスト[j]<リスト[min])の場合
  16. 最小値= j ;
  17. }
  18. int t =リスト[分];
  19. リスト[min] = リスト[i];
  20. リスト[i] = t;
  21. }
  22.  
  23. }
  24. }
  25. パブリッククラス MainClass
  26. {
  27. パブリック静的 void Main()
  28. {
  29. int[] iArrary =新しいint[]{1,5,3,6,10,55,9,2,87,12,34,75,33,47};
  30. 選択ソーターss =新しい選択ソーター();
  31. ss.Sort(i配列);
  32. (int m = 0 ; m < iArrary.Length; m++)の場合
  33. Console.Write("{0} ",iArrary[m]);
  34. コンソールに行を書き込む
  35.  
  36. }
  37. }
  38. }

挿入ソート

挿入ソートアルゴリズム。 C# プログラミング スキルを向上させたい友人同士で、お互いに話し合うことができます。たとえば、次のプログラムはポリモーフィズムを実装していません。これを実装できるようにしてみましょう。

  1. システムの使用;
  2.  
  3. 名前空間 InsertionSorter
  4. {
  5. パブリッククラス InsertionSorter
  6. {
  7. パブリック void ソート(int[] リスト)
  8. {
  9. (int i = 1 ; i < list.Length; i++)の場合
  10. {
  11. int t =リスト[i];
  12. 整数j = i ;
  13. ((j>0)&&(リスト[j-1]>t))の間
  14. {
  15. リスト[j]=リスト[j-1];
  16. --j;
  17. }
  18. リスト[j] = t;
  19. }
  20.  
  21. }
  22. }
  23. パブリッククラス MainClass
  24. {
  25. パブリック静的 void Main()
  26. {
  27. int[] iArrary =新しいint[]{1,13,3,6,10,55,98,2,87,12,34,75,33,47};
  28. 挿入ソーターii =新しい挿入ソーター();
  29. ii.Sort(i配列);
  30. (int m = 0 ; m < iArrary.Length; m++)の場合
  31. Console.Write("{0}",iArrary[m]);
  32. コンソールに行を書き込む
  33. }
  34. }
  35. }

シェルソート

シェルソートは、グループをセグメントに分割して挿入ソートを実行します。C#言語のプログラミングスキルを向上させたい友人同士で、お互いに議論することができます。たとえば、次のプログラムはポリモーフィズムを実装していません。これを実装できるようにしてみましょう。

  1. システムの使用;
  2.  
  3. 名前空間 ShellSorter
  4. {
  5. パブリッククラス ShellSorter
  6. {
  7. パブリック void ソート(int[] リスト)
  8. {
  9. int インク;
  10. inc = 1 ; inc <= list.Length / 9; inc = 3 * inc + 1の場合);
  11. (; inc > 0; inc /= 3) の場合
  12. {
  13. (int i = inc + 1; i <= list.Length; i += inc)の場合
  14. {
  15. int t =リスト[i-1];
  16. 整数j = i ;
  17. ((j>inc)&&(リスト[j-inc-1]>t))の間
  18. {
  19. リスト[j-1]=リスト[j-inc-1];
  20. j- =増加;
  21. }
  22. リスト[j-1] = t;
  23. }
  24. }
  25. }
  26. }
  27. パブリッククラス MainClass
  28. {
  29. パブリック静的 void Main()
  30. {
  31. int[] iArrary =新しいint[]{1,5,13,​​6,10,55,99,2,87,12,34,75,33,47};
  32. ShellSorter sh =新しいShellSorter();
  33. sh.Sort(i配列);
  34. (int m = 0 ; m < iArrary.Length; m++)の場合
  35. Console.Write("{0} ",iArrary[m]);
  36. コンソールに行を書き込む
  37. }
  38. }
  39. }

上記はC#で開発されたソートアルゴリズムを紹介した。

<<:  よく使われる 3 つの C# ソート アルゴリズム

>>:  C# はデジタル変換のための中国語アルゴリズムを記述します

ブログ    
ブログ    
ブログ    
ブログ    

推薦する

...

図解されたtinyBERTモデル - BERTモデル圧縮のエッセンス

翻訳者|朱 仙中レビュー | Chonglou導入近年、大規模言語モデルの開発は飛躍的に進歩しました...

ChatGPTがやってくる、個人はそれにどう対処すべきか

このテーマについて、人工知能の起源と発展、その一般原理、不安を避ける方法、そして時代に追いつく方法な...

将来、人工知能ロボットに置き換えられる可能性のある10の仕事

専門家は、将来的には職業の約 70% が自動化されると予測しています。運転手、教師、ベビーシッター、...

...

エスティローダーはAI/AR技術を活用してメイクアップをより洗練させ、近視の人がメイクアップがうまくできないことを心配する必要がなくなる

この化粧品大手は、視覚障害者が簡単に化粧を行えるよう、AIと拡張現実(AR)技術を活用した音声対応の...

AIがグローバルビジネスのデータセンター管理を推進

現在、革命的な変化の波が進行しており、企業が顧客や企業にサービスを提供する方法を変えていると考えられ...

1760億のパラメータを持つBLOOMZの推論、パフォーマンスレイテンシはわずか3.7秒

大規模言語モデル (LLM) のサイズが大きくなるにつれて、これらのモデルを本番環境で推論に導入して...

AIGC時代のビデオ普及モデル、復旦チームらが分野初のレビューを発表

AI 生成コンテンツは、現在の人工知能分野で最もホットなトピックの 1 つとなっており、この分野の最...

人工知能は暗記学習を「終わらせる」ことはない

人工知能に代表される新技術は、知識記憶を主眼とする中国の教育モデルの優位性を覆すことになるのだろうか...

...

コミック版:ディープラーニングって何?

Google はどのようにしてわずか数秒で Web ページ全体をさまざまな言語に翻訳するのか、ある...

...

eMule プロトコル スライス選択アルゴリズムの分析

ダウンロードはデータの送信であることはご存じのとおりです。この点に関しては、すでに合意内容について多...

チャットボットのテスト: フレームワーク、ツール、テクニックの詳細

[[425133]] [51CTO.com クイック翻訳]長年にわたり、ビジネス マーケティングの動...