现在的位置: 主页 > 联系方式 > 文章列表

选择排序算法以及排序时间的测试

作者:厦工楚胜(湖北)专用汽车制造有限公司 来源:www.szzq168.com 发布时间:2017-09-09 10:35:30
 

选择排序算法以及排序时间的测试 // 2013年3月13日19:19:01 吴新强

using System;

using System.Collections.Generic;

using System.Linq;

using System.Diagnostics;

using System.IO;

namespace Chapter3_SelectionSort

{

class CArray

{

static void Main(string[] args)

{

CArray ca = new CArray(10);

Timing tObj = new Timing();

Random random = new Random(100);//随机数

for (int i = 0; i < 10; i++)

{

ca.Insert(random.Next(0, 100));

}

Console.WriteLine("SelectionSort Before Sorting:");//排序前

Console.WriteLine();

ca.DisplayElements();//显示数据

Console.WriteLine(); // 换行

tObj.StartTime();// 测试排序时间的开始时间处

Console.WriteLine();

Console.WriteLine("SelectionSort During Sorting:");//排序中

Console.WriteLine();

ca.SelectionSort();// 调用选择排序法进行排序

Console.WriteLine();

tObj.StopTime();// 测试排序时间的截止时间

Console.WriteLine("SelectionSort After Sorting:");//排序后

Console.WriteLine();

ca.DisplayElements();//显示数据

Console.WriteLine();

Console.WriteLine("SelectionSort time( .net):" + tObj.Result().TotalMilliseconds + " MS");// 显示选择排序法共使用了多少时间

Console.WriteLine();

ca.Clear();

}

public void SelectionSort()// 选择排序法

{

int temp, min;

for (int outer = 0; outer <= upper; outer++)

{

min = outer;

for (int inner = outer + 1; inner <= upper; inner++)

{

if (array[inner] < array[min])

{

min = inner;

}

temp = array[outer];

array[outer] = array[min];

array[min]= temp;

}

this.DisplayElements();

}

}

private int[] array;

private int upper;

private int numElements;

public CArray(int Size)

{

array = new int[Size];

upper = Size - 1; // upper 最大长度

numElements = 0;// 数组变量

}

public void Insert(int item)

{

array[numElements] = item;

numElements++;

}

public void DisplayElements()// 显示数据

{

for (int i = 0; i <= upper; i++)

Console.Write(array[i] + " ");

}

public void Clear()// 删除数据

{

for (int i = 0; i < upper; i++)

{

array[i] = 0;

numElements = 0;

}

}

}

public class Timing // 时间测试类

{

TimeSpan duration;

public Timing()

{

duration = new TimeSpan(0);

}

public void StopTime()

{

duration=Process.GetCurrentProcess().TotalProcessorTime;

}

public void StartTime()

{

GC.Collect();

GC.WaitForPendingFinalizers();

}

public TimeSpan Result()

{

return duration;

}

}

}

/*class CArray

{

private int[] array;

private int upper;

private int numElements;

public CArray(int Size)

{

array = new int[Size];

upper = Size - 1;

numElements = 0;

}

public void Insert(int item)

{

array[numElements] = item;

numElements++;

}

public void DisplayElements()

{

for (int i = 0; i <= upper; i++)

Console.WriteLine(array[i] + "");

}

public void Clear()

{

for (int i = 0; i < upper i++)

{

array [i]=0;

numElements=0;

}

}

}

}*/

实验结果:

,站群软件,专题系统

企业建站2800元起,携手武汉肥猫科技,做一个有见地的颜值派!更多优惠请戳:湖北网站制作 http://hubei.666rj.com

  • 上一篇:《百度绿萝算法2.0更新公告》发布后的连锁反应
  • 下一篇:最后一页