تصویر زیر میتواند به شما در درک سریع تر و بهتر این الگوریتم کمک کند

using System;

class Program{
    static void Main(){
        int[10] ary;
        for (int i = 0;i<10;i++){
            Console.Write("Enter elemnt #"+i.ToString()+": ");
            ary[i] = (int)Console.ReadLine();
        }
        ary = sort(ary);
    }
    static void swap(ref int a,ref int b){
        int tmp = a;
        a = b;
        b = tmp;
    }
    static int[] sort(int[] ary){
        bool change = true;
        while( change){
        change = false;
            for (int i=0;i<10;i++){
                if (i!=9){
                    if (ary[i]>ary[i+1]){
                        swap(ref ary[i],ary[i+1]);
                        change = true;
                    }
                }
            }
        }
        return ary;
    }
    static void print(int[] ary){
        foreach (int i in ary){
            Console.Write(i.ToString() + ",");
        }
    }
}