日期:2014-05-19  浏览次数:20753 次

数组排序问题,,,,,,,,望帮忙!!!!!!
一个数组   
t[0]=10
t[1]=20
t[3]=15
t[4]=5

输出结果按值的大小输出它的下标  
 1  3  0   4


------解决方案--------------------
t[2]呢,如果是这样

t[0]=10
t[1]=20
t[2]=15
t[3]=5

一个笨方法,不知道还没有更直接或者更便的方法

int[] t = new int[4] { 10, 20, 15, 5 };
int[] temp = new int[t.Length];
for (int i = 0; i < t.Length; i++)
{
temp[i] = i;
}

Array.Sort(t, temp);
Array.Reverse(temp);

foreach (int i in temp)
{
richTextBox2.Text += i.ToString() + "\n ";
}

输出
1
2
0
3