急..关于C#数组赋值的问题!

来源:百度知道 编辑:UC知道 时间:2024/05/10 15:01:20
各位高手:

目前有这么一道题!
要求给一个数组赋值..但赋值是不固定的100个数(Int类型) 用最基本的方法写出如何给这个数组赋值..如何算出这个数组的从大到小排列和从小到大的排列!

PS: 不能用 System.Array.Sort();
System.Array.Reverse();
这些方法!
int[] A = { 1, 2, 3, 5, 8, 75 };
System.Array.Sort(A);
System.Array.Reverse(A);
for (int i = 0; i < A.Length; i++)
Console.WriteLine("{0}", A[i].ToString());
Console.ReadKey();

这是我写的方法..但被老是给PK了..

仅有5分..送了!
楼下的 能给讲一下这个冒泡算法的具体实现过程么??在网上找了些看了看 不是很理解啊! 不胜感激!

int[] lottoNumbers = new int[100];
Random rand = new Random();
for (int i=0; i < 100; i++)
{
lottoNumbers[i] = rand.Next(1, 500);
Console.WriteLine(lottoNumbers[i]);
}
Console.ReadLine();

怎么算从大到小和从小到大,可以用冒泡排序法
基本理念就是做长度N*N的循环
判断数据大小
然后让temp = Numbers[i];
Numbers[i] = Numbers[i+1];
Numbers[i+1] = temp ;
这样的数据位置交换的过程

自我感觉冒泡排序就是通过不断的比较相邻的两个数,然后大数浮起来(就是所谓的冒泡),小数沉下去,然后根据需要交换位置
,最后实现排序过程
比如3,1,2 我用3和1比较 1小3大 所以按升序排序的方法的话交换31的位置变成1,3,然后再用3和2比较,3大 所以2和3交换 变成1 2 3,接着继续用1和2比较不交换 2和3比较不交换(计算机应该有这样的过程,在某些情况下这种排序的效率也不高,但是是最准确的),冒泡结束,具体的实现过程我已经写了,也就是设一个临时变量temp存放第一个数 然后将第二个数赋值给第一个 再将temp值赋值给第二个,这样从感觉上来说就好像数据交换了位置

数据结构没学好,上面就是我的个人感受了,不知道说的对不