C # sorting Algorithm Daquan
Tuoren
2004-7-21
I. Bubble)
Using system;
namespace bubblesorter
{< br> public class bubblesorter
{< br> Public void sort (INT [] list)
{< br> int I, j, temp;
bool done = false;
j = 1;
while (j {< br> done = true;
for (I = 0; I {< br> If (list [I]> list [I + 1])
{< br> done = false;
temp = list [I];
list [I] = list [I + 1];
list [I + 1] = temp;
}< BR >}< br> J ++;
}< BR >}
Public class mainclass
{
Public static void main ()
{
Int [] iarrary = new int };
Bubblesorter SH = new bubblesorter ();
Sh. Sort (iarrary );
For (INT m = 0; m <iarrary. length; m ++)
Console. Write ("{0}", iarrary [m]);
Console. writeline ();
}
}
}
Ii. Selection)
Using system;
namespace selectionsorter
{< br> public class selectionsorter
{< br> private int min;
Public void sort (INT [] list)
{< br> for (INT I = 0; I {< br> min = I;
for (Int J = I + 1; j {< br> If (list [J] min = J;
}< br> int T = list [Min];
list [Min] = list [I];
list [I] = T;
}< BR >}
Public class mainclass
{
Public static void main ()
{
Int [] iarrary = new int };
Selectionsorter Ss = new selectionsorter ();
SS. Sort (iarrary );
For (INT m = 0; m <iarrary. length; m ++)
Console. Write ("{0}", iarrary [m]);
Console. writeline ();
}
}
}
3. insertionsorter)
Using system;
namespace insertionsorter
{< br> public class insertionsorter
{< br> Public void sort (INT [] list)
{< br> for (INT I = 1; I {< br> int T = list [I];
Int J = I;
while (j> 0) & (list [J-1]> T)
{< br> list [J] = list [J-1];
-- J;
}< br> list [J] = T;
}< BR >}
Public class mainclass
{
Public static void main ()
{
Int [] iarrary = new int };
Insertionsorter II = new insertionsorter ();
Ii. Sort (iarrary );
For (INT m = 0; m <iarrary. length; m ++)
Console. Write ("{0}", iarrary [m]);
Console. writeline ();
}
}
}
4. shellsorter)
Using system;
namespace shellsorter
{< br> public class shellsorter
{< br> Public void sort (INT [] list)
{< br> int Inc;
for (INC = 1; INC <= List. length/9; Inc = 3 * Inc + 1);
for (; INC> 0; INC/= 3)
{< br> for (INT I = inc + 1; I <= List. length; I + = Inc)
{< br> int T = list [I-1];
Int J = I;
while (j> Inc) & (list [j-inc-1]> T)
{< br> list [J-1] = list [j-inc-1];
J-= Inc;
}< br> list [J-1] = T;
}< BR >}
public class mainclass
{< br> Public static void main ()
{< br> int [] iarrary = new int,, };< br> shellsorter SH = new shellsorter ();
Sh. sort (iarrary);
for (INT m = 0; m console. write ("{0}", iarrary [m]);
console. writeline ();
}< BR >}