同样的1000万数组的排序算法为什么C# 用时0.5秒,而C语言用时0.6秒?
2013-05-04 11:09
274 查看
同样的1000万数组的排序算法为什么C# 用时0.5秒,而C语言用时0.6秒?
C语言 算法库
C#调用范例:
[DllImport("BwsyqIndex.dll")]
public static extern void HzSort(int[] mi, int num_elements);
protected void Page_Load(object sender, EventArgs e)
{
int iUp = 1000000;
Random ro = new Random(10000000);
long tick = DateTime.Now.Ticks;
int[] a = new int[10000000];
for (int i = 0; i < 10000000; i++)
{
a[i] = ro.Next(10000000);
}
//开始时间
TimeSpan runTime = new TimeSpan(DateTime.Now.Ticks);
HzSort(a, 10000000);
//结束时间
TimeSpan timeNow = new TimeSpan(DateTime.Now.Ticks);
//时间间隔
TimeSpan ts = timeNow.Subtract(runTime).Duration();
Response.Write(" 用时:" + ts.TotalSeconds.ToString() + "秒 " + ts.TotalMilliseconds.ToString() + "毫秒");
}
C语言 算法库
C#调用范例:
[DllImport("BwsyqIndex.dll")]
public static extern void HzSort(int[] mi, int num_elements);
protected void Page_Load(object sender, EventArgs e)
{
int iUp = 1000000;
Random ro = new Random(10000000);
long tick = DateTime.Now.Ticks;
int[] a = new int[10000000];
for (int i = 0; i < 10000000; i++)
{
a[i] = ro.Next(10000000);
}
//开始时间
TimeSpan runTime = new TimeSpan(DateTime.Now.Ticks);
HzSort(a, 10000000);
//结束时间
TimeSpan timeNow = new TimeSpan(DateTime.Now.Ticks);
//时间间隔
TimeSpan ts = timeNow.Subtract(runTime).Duration();
Response.Write(" 用时:" + ts.TotalSeconds.ToString() + "秒 " + ts.TotalMilliseconds.ToString() + "毫秒");
}
相关文章推荐
- C语言--数组实现--各种排序算法个人总结
- C语言为什么不执行数组下标有效性检查?
- C语言中,为什么没有把long转化成字符数组的函数?
- 为什么C语言不检查数组的下标?
- C专家编程之为什么C语言把数组形参当做指针:数组/指针实参
- 为什么C语言检查数组访问越界会这么难?
- 你不知道的c语言之为什么数组的大小不能是变量
- c语言 数组名&&结构体名 为什么不能用数组名给数组赋值,结构体却可以
- C语言 为什么数组名(数组首地址)不能进行加减操作?
- 利用C#中的参数数组实现C语言中的printf函数
- 为什么c语言中字符数组可以越界
- C语言与C#下的动态数组
- c语言:为什么不进行下标检查,总结下指针和数组
- 为什么C语言中的的数组是从0开始的?
- C语言中,为什么结构体后面经常定义一个空数组
- C专家编程之为什么C语言把数组形參当做指针:数组/指针实參
- 【C语言】为什么指明数组的列数?
- c语言,c#,C++,vc..为什么都有个c呢?
- 如果改变了形参数组的值 从而在调用函数期间 形参数组就和实参数组共占同一段内存单元 为什么形参数组从实参数组那里得到起始地址后 请问各位C语言高手:当用数组名作函数参数时 也就该变了实参数组的值
- C#实现int类型数组拷贝