# 十行代码搞定 "冒泡排序"

Java Code:
class Class1
{
static void bubbleSort(int[] a)
{
for (int j = a.length - 1; j > 0; j--) // outer loop (backward)
for (int i = 0; i < j; i++) // inner loop (forward)
if (a[i] > a[i+1]) //Swap
{
a[i] = a[i] + a[i+1];
a[i+1] = a[i] - a[i+1];
a[i] = a[i] - a[i+1];
}

}
public static void main(String[] args)
{
int[] a = new int[]{-1,-2,9,4,5,3,7,1,2,3,1,2,3,-3,2,-19};
//int[] a = new int[]{9,8,7,6,5,4,3,2,1,0,11};
bubbleSort(a);
for (int i=0; i < a.length; i++)
{
System.out.println(a[i]);
}
}
}

C# Code:
class Class1
{
static void BubbleSort(int[] a)
{
for (int j = a.Length - 1; j > 0; j--) // outer loop (backward)
for (int i = 0; i < j; i++) // inner loop (forward)
if (a[i] > a[i+1])
{
//a[i] = a[i] + a[i+1];
//a[i+1] = a[i] - a[i+1];
//a[i] = a[i] - a[i+1];
Swap(ref a[i],ref a[i+1]);
}
}
static void Swap(ref int x,ref int y)
{
x = x + y;
y = x - y;
x = x - y;
}
static void Main(string[] args)
{
int[] a = new int[]{-1,-2,9,4,5,3,7,1,2,3,1,2,3,-3,2,-19};
//int[] a = new int[]{9,8,7,6,5,4,3,2,1,0,11};
BubbleSort(a);
for (int i=0; i < a.Length; i++)
{
System.Console.WriteLine(a[i]);
}