自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

C#開發(fā)排序算法詳解

開發(fā) 后端 算法
這里介紹C#開發(fā)排序算法,對想提高C#語言編程能力的朋友,我們可以互相探討一下。如:下面的程序,并沒有實現(xiàn)多態(tài),來幫它實現(xiàn)一下。

C#語言還是比較常見的東西,這里我們主要介紹C#開發(fā)排序算法,包括介紹冒泡排序、選擇排序、插入排序、希爾排序等方面。

冒泡排序

學語言要花大力氣學數(shù)據(jù)結(jié)構(gòu)和算法。

  1. using System;  
  2.  
  3. namespace BubbleSorter  
  4. {  
  5. public class BubbleSorter  
  6. {  
  7. public void Sort(int [] list)  
  8. {  
  9. int i,j,temp;  
  10. bool done=false;  
  11. j=1;  
  12. while((j<list.Length)&&(!done))  
  13. {  
  14. done=true;  
  15. for(i=0;i<list.Length-j;i++)  
  16. {  
  17. if(list[i]>list[i+1])  
  18. {  
  19. done=false;  
  20. temp=list[i];  
  21. list[i]=list[i+1];  
  22. list[i+1]=temp;  
  23. }  
  24. }  
  25. j++;  
  26. }  
  27.  
  28. }  
  29. }  
  30. public class MainClass  
  31. {  
  32. public static void Main()  
  33. {  
  34. int[] iArrary=new int[]{1,5,13,6,10,55,99,2,87,12,34,75,33,47};  
  35. BubbleSorter sh=new BubbleSorter();  
  36. sh.Sort(iArrary);  
  37. for(int m=0;m<iArrary.Length;m++)  
  38. Console.Write("{0} ",iArrary[m]);  
  39. Console.WriteLine();  
  40. }  
  41. }  
  42. }  

選擇排序

本人用了C#開發(fā)排序算法。希望能為C#語言的學習者帶來一些益處。不要忘了,學語言要花大力氣學數(shù)據(jù)結(jié)構(gòu)和算法。

  1. using System;  
  2.  
  3. namespace SelectionSorter  
  4. {  
  5. public class SelectionSorter  
  6. {  
  7. private int min;  
  8. public void Sort(int [] list)  
  9. {  
  10. for(int i=0;i<list.Length-1;i++)  
  11. {  
  12. min=i;  
  13. for(int j=i+1;j<list.Length;j++)  
  14. {  
  15. if(list[j]<list[min])  
  16. min=j;  
  17. }  
  18. int t=list[min];  
  19. list[min]=list[i];  
  20. list[i]=t;  
  21. }  
  22.  
  23. }  
  24. }  
  25. public class MainClass  
  26. {  
  27. public static void Main()  
  28. {  
  29. int[] iArrary=new int[]{1,5,3,6,10,55,9,2,87,12,34,75,33,47};  
  30. SelectionSorter ss=new SelectionSorter();  
  31. ss.Sort(iArrary);  
  32. for(int m=0;m<iArrary.Length;m++)  
  33. Console.Write("{0} ",iArrary[m]);  
  34. Console.WriteLine();  
  35.  
  36. }  
  37. }  
  38. }  

插入排序

插入排序算法。對想提高C#語言編程能力的朋友,我們可以互相探討一下。如:下面的程序,并沒有實現(xiàn)多態(tài),來,幫它實現(xiàn)一下。

  1. using System;  
  2.  
  3. namespace InsertionSorter  
  4. {  
  5. public class InsertionSorter  
  6. {  
  7. public void Sort(int [] list)  
  8. {  
  9. for(int i=1;i<list.Length;i++)  
  10. {  
  11. int t=list[i];  
  12. int j=i;  
  13. while((j>0)&&(list[j-1]>t))  
  14. {  
  15. list[j]=list[j-1];  
  16. --j;  
  17. }  
  18. list[j]=t;  
  19. }  
  20.  
  21. }  
  22. }  
  23. public class MainClass  
  24. {  
  25. public static void Main()  
  26. {  
  27. int[] iArrary=new int[]{1,13,3,6,10,55,98,2,87,12,34,75,33,47};  
  28. InsertionSorter ii=new InsertionSorter();  
  29. ii.Sort(iArrary);  
  30. for(int m=0;m<iArrary.Length;m++)  
  31. Console.Write("{0}",iArrary[m]);  
  32. Console.WriteLine();  
  33. }  
  34. }  
  35. }  

希爾排序

希爾排序是將組分段,進行插入排序. 對想提高C#語言編程能力的朋友,我們可以互相探討一下。如:下面的程序,并沒有實現(xiàn)多態(tài),來,幫它實現(xiàn)一下。

  1. using System;  
  2.  
  3. namespace ShellSorter  
  4. {  
  5. public class ShellSorter  
  6. {  
  7. public void Sort(int [] list)  
  8. {  
  9. int inc;  
  10. for(inc=1;inc<=list.Length/9;inc=3*inc+1);  
  11. for(;inc>0;inc/=3)  
  12. {  
  13. for(int i=inc+1;i<=list.Length;i+=inc)  
  14. {  
  15. int t=list[i-1];  
  16. int j=i;  
  17. while((j>inc)&&(list[j-inc-1]>t))  
  18. {  
  19. list[j-1]=list[j-inc-1];  
  20. j-=inc;  
  21. }  
  22. list[j-1]=t;  
  23. }  
  24. }  
  25. }  
  26. }  
  27. public class MainClass  
  28. {  
  29. public static void Main()  
  30. {  
  31. int[] iArrary=new int[]{1,5,13,6,10,55,99,2,87,12,34,75,33,47};  
  32. ShellSorter sh=new ShellSorter();  
  33. sh.Sort(iArrary);  
  34. for(int m=0;m<iArrary.Length;m++)  
  35. Console.Write("{0} ",iArrary[m]);  
  36. Console.WriteLine();  
  37. }  
  38. }  
  39. }  

以上介紹C#開發(fā)排序算法

【編輯推薦】

  1. C#使用sqlserver存儲淺析
  2. 由C++轉(zhuǎn)向C#簡單介紹
  3. C# oledbconnection方法淺談
  4. 數(shù)據(jù)庫常用C#代碼概述
  5. C#調(diào)用ImOK學習筆記
責任編輯:佚名 來源: IT168
相關(guān)推薦

2009-09-10 16:30:11

C#排序函數(shù)

2023-10-09 07:11:03

排序算法序列

2009-08-11 09:19:52

C#選擇排序C#算法

2009-09-03 14:55:56

C#實現(xiàn)DataGri

2009-08-03 17:38:12

排序算法C#數(shù)據(jù)結(jié)構(gòu)

2009-08-26 18:14:11

C#排序算法

2009-09-08 17:20:01

C#排序算法

2009-09-16 13:05:32

C#組件開發(fā)

2023-10-10 08:00:07

2009-09-07 06:18:57

C#窗體設計器

2009-08-25 17:02:20

C#串口操作

2009-08-31 09:41:05

C#反射靜態(tài)方法開發(fā)

2009-08-10 16:19:37

C#冒泡排序

2009-08-24 11:23:41

C# TimeLabe

2009-09-07 16:13:56

C# MessageB

2009-07-30 18:20:21

C#繼承

2009-09-01 16:07:04

C#命名規(guī)約

2009-08-14 17:09:48

C#引用類型

2009-11-20 09:10:21

C#開發(fā)環(huán)境

2017-11-22 14:20:07

前端JavaScript排序算法
點贊
收藏

51CTO技術(shù)棧公眾號