我有一个数值数组, 存放一些数据(没有规律). 数组大小大概有400个元素吧. 我想用比较快的方法找到这里面的最大值和最小值. 不知道用什么算法快一些, 谢谢
解决方案 »
- c# 导出数据后直接控制EXCEL打印 急!!! 马上结贴!
- DataTable或DataView中,获取某列的所有值!
- [散分,散分]在FreeBSD上安装MonoDevlop成功,mono2.5可用了
- 在C#中如何将文件夹中的文件按照创建时间排序?
- treeView中mousedown的问题
- 大家是怎么规划自己的类库的?
- .NET Framework 求助 (C# 开发应用程序)
- 在复制文件时,那个动画效果如何实现?
- 关于强类型的DataSet??
- c#中关于treeview??????????????
- 没有执行 onkeyup="CheckUserName(document.getElementById('UserName').value)"
- 这样的代码出错怎么改
int min = int.MaxValue;
int max = int.MinValue;foreach(int i in numbers)
{
if( i < min ) min = i;
if( i > max ) max = i;
}
public static void BubbleSort(int[] R)
{
int i, j;
int temp;
bool exchange; for (i = 0; i < R.Length; i++)
{
exchange = false;
for (j = R.Length - 2; j >= i; j--)
{
if (R[j + 1] < R[j])
{
temp = R[j + 1];
R[j + 1] = R[j];
R[j] = temp; exchange = true;
}
}
if (!exchange)
{
break;
}
}
Console.WriteLine(R[R.Length-1]);
}
引用 1 楼 gomoku 的回复:
循环一次:)
C# code
int min = int.MaxValue;
int max = int.MinValue; foreach(int i in numbers)
{
if( i < min ) min = i;
if( i > max ) max = i;
}
首先明确一点排序算法和查找算法是两回事情
而楼主要求的查找最大最小值,可以看成是一种特例
如果你要找某个具体的值,线性的查找就不一定是最快的,比如二分查找,时间复杂度只有O(lgN)
而查最大最小值就必定要遍历整个数组,因此......