Three Basic Sort for using C#
来源:互联网 发布:汽配生产计划调度优化 编辑:程序博客网 时间:2024/05/17 08:18
首先,要写一个基类:
class CArray
{
private int[] arr;
private int ElementNum;
private int upper;
public CArray(int size)
{
arr = new int[size];
ElementNum = 0;
upper = size - 1;
}
public void Insert(int item)
{
for (int i = 0; i <= upper; i++)
{
arr[ElementNum] = item;
}ElementNum++;
}
public void Clear()
{
for (int i = 0; i <= upper; i++)
{
arr[ElementNum] = 0;
}
ElementNum = 0;
}
public void Display()
{
for (int i = 0; i <= upper; i++)
Console.Write(arr[i] + " ");
Console.Write("/n");
}
//冒泡排序:
public void BubbleSort()
{
int temp;
for (int outer = 1; outer <= upper; outer++)
{
for (int inner = 0; inner <= upper; inner++)
{
if (arr[inner] > arr[outer])
{
temp = arr[inner];
arr[inner] = arr[outer];
arr[outer] = temp;
}
}
}
}
//选择排序:
public void SelectionSort()
{
int temp;
int min;
for (int outer = 1; outer <= upper; outer++)
{
temp = arr[outer];
min = outer;
for (int inner = outer + 1; inner <= upper; inner++)
{
if (arr[inner] <= arr[min])
{
min = inner;
}
}
temp = arr[outer];
arr[outer] = arr[min];
arr[min] = temp;
}
}
//插入排序:
public void InsertionSort()
{
int temp; int outer; int inner;
for (outer = 1; outer <= upper; outer++)
{
temp = arr[outer];
inner = outer;
while (inner > 0 && arr[inner - 1] >= temp)
{
arr[inner] = arr[inner - 1];
inner -= 1;
}
arr[inner] = temp;
}
}
}
测试:
static void Main(string[] args)
{
CArray ca = new CArray(10);
Random rd = new Random();
for (int i = 0; i < 10; i++)
ca.Insert(Convert.ToInt32(rd.NextDouble()*100));
Console.Write("未排序的:");
ca.Display();
Console.Write("经过冒泡排序:");
ca.BubbleSort();
ca.Display();
Console.Write("经过选择排序:");
ca.SelectionSort();
ca.Display();
Console.Write("经过插入排序:");
ca.Display();
}
结果:
未排序的:49 5 78 46 46 49 73 33 75 23
经过冒泡排序:5 23 33 46 46 49 49 73 75 78
经过选择排序:5 23 33 46 46 49 49 73 75 78
经过插入排序:5 23 33 46 46 49 49 73 75 78
请按任意键继续. . .
- Three Basic Sort for using C#
- Merge sort code using C# (Arithmetic)
- basic steps for using classes to display alv report
- Sort using
- if --- Sort Three Numbers
- Sort Three Distinct Keys
- Three.js Basic examples(1)
- Using C# Yield for Readability and Performance
- Using Basic Debugging
- Learn Unity(0)——basic C# for Unity
- C# Basic
- Visual Studio Tools for Office : Using Visual Basic 2005 with Excel, Word, Outlook, and InfoPath
- Three Algorithms for Fibonacci
- cfA. Chess For Three
- 893AChess For Three
- chess for three A
- A. Chess For Three
- sort data using Python3
- 初学java
- C#中关于在一个数据库同时修改2个数据的语法使用!
- 即将毕业的我
- 文件夹中的autorun.inf文件怎么删除
- 自己写的一个较大的上位机程序,不知道大家感觉怎么样
- Three Basic Sort for using C#
- 电脑中常用的快捷键
- 取消快捷方式的小箭头
- wo
- 新人报道
- 点滴收获
- 找
- 编写who命
- VC 随鼠标移动的文字。