using System;
using System.Collections.Generic;
using System.Text;
namespace SelectionSorter
{
//冒泡排序
public class BubbleSorter
{
public void Sort(int[] list)
{
int i, j, temp;
bool done = false;
j = 1;
while ((j < list.Length) && (!done))
{
done = true;
for (i = 0; i < list.Length - j; i++)
{
if (list[i] > list[i + 1])
{
done = false;
temp = list[i];
list[i] = list[i + 1];
list[i + 1] = temp;
}
}
j++;
}
}
}
public class MainClass
{
public static void Main()
{
int[] iArrary = new int[] { 1, 5, 13, 6, 10, 55, 99, 2, 87, 12, 34, 75, 33, 47 };
BubbleSorter sh = new BubbleSorter();
sh.Sort(iArrary);
for (int m = 0; m < iArrary.Length; m++)
{
Console.Write("{0} ", iArrary[m]);
}
Console.WriteLine();
Console.ReadLine();
}
}
//选择排序
//public class SelectionSorter
//{
// private int min;
// public void Sort(int[] list)
// {
// for (int i = 0; i < list.Length - 1; i++)
// {
// min = i;
// for (int j = i + 1; j < list.Length; j++)
// {
// if (list[j] < list[min])
// min = j;
// }
// int t = list[min];
// list[min] = list[i];
// list[i] = t;
// }
// }
//}
//public class MainClass
//{
// public static void Main()
// {
// int[] iArrary = new int[] { 1, 5, 3, 6, 10, 55, 9, 2, 87, 12, 34, 75, 33, 47 };
// SelectionSorter ss = new SelectionSorter();
// ss.Sort(iArrary);
// for (int m = 0; m < iArrary.Length; m++)
// Console.Write("{0} ", iArrary[m]);
// Console.WriteLine();
// Console.ReadLine();
// }
//}
//插入排序
//public class InsertionSorter
//{
// public void Sort(int[] list)
// {
// for (int i = 1; i < list.Length; i++)
// {
// int t = list[i];
// int j = i;
// while ((j > 0) && (list[j - 1] > t))
// {
// list[j] = list[j - 1];
// --j;
// }
// list[j] = t;
// }
// }
//}
//public class MainClass
//{
// public static void Main()
// {
// int[] iArrary = new int[] { 1, 13, 3, 6, 10, 55, 98, 2, 87, 12, 34, 75, 33, 47 };
// InsertionSorter ii = new InsertionSorter();
// ii.Sort(iArrary);
// for (int m = 0; m < iArrary.Length; m++)
// {
// Console.Write("{0}", iArrary[m]);
// }
// Console.WriteLine();
// Console.ReadLine();
// }
//}
//希尔排序
//public class ShellSorter
//{
// public void Sort(int[] list)
// {
// int inc;
// for (inc = 1; inc <= list.Length / 9; inc = 3 * inc + 1) ;
// for (; inc > 0; inc /= 3)
// {
// for (int i = inc + 1; i <= list.Length; i += inc)
// {
// int t = list[i - 1];
// int j = i;
// while ((j > inc) && (list[j - inc - 1] > t))
// {
// list[j - 1] = list[j - inc - 1];
// j -= inc;
// }
// list[j - 1] = t;
// }
// }
// }
//}
//public class MainClass
//{
// public static void Main()
// {
// int[] iArrary = new int[] { 1, 5, 13, 6, 10, 55, 99, 2, 87, 12, 34, 75, 33, 47 };
// ShellSorter sh = new ShellSorter();
// sh.Sort(iArrary);
// for (int m = 0; m < iArrary.Length; m++)
// {
// Console.Write("{0} ", iArrary[m]);
// }
// Console.WriteLine();
// Console.ReadLine();
// }
//}
}