1. 程式人生 > >Unity c#演算法之冒泡

Unity c#演算法之冒泡

氣泡排序(Bubble Sort),是一種電腦科學領域的較簡單的排序演算法。 它重複地走訪過要排序的數列,一次比較兩個元素,如果他們的順序錯誤就把他們交換過來。走訪數列的工作是重複地進行直到沒有再需要交換,也就是說該數列已經排序完成。 這個演算法的名字由來是因為越大的元素會經由交換慢慢“浮”到數列的頂端,故名氣泡排序 氣泡排序演算法的運作如下:(從後往前)
  1. 比較相鄰的元素。如果第一個比第二個大,就交換他們兩個。
  2. 對每一對相鄰元素作同樣的工作,從開始第一對到結尾的最後一對。在這一點,最後的元素應該會是最大的數。
  3. 針對所有的元素重複以上的步驟,除了最後一個。
  4. 持續每次對越來越少的元素重複上面的步驟,直到沒有任何一對數字需要比較。
    ——百度百科
泡排序

unity 中 ,面試也可能會涉及到,於是我寫了一個簡單的冒泡下面貼上程式碼

void bubble(int[] array)
{//從裡外開始
int inner=0;
int out=0;
int temp=0;//換值的容器
int isFirst=0;
int L=array.length;//長度

for(out=L-1;out>0;out--)
{
     isFirst=0;
      for(inner=0;inner<L-1;inner++)
       {
         //進行比較
        if(array[inner]>array[inner+1])
        {
          tempt=array[inner];
          array[inner]=array[inner+1];
          array[inner+1]=tempt;
          if(isFirst==0)
              isFirst=1;
         if(inner==0 && isFirst!=1) //inner為0即第一次迴圈
           {break;}


         }

        }



}




}