{
//把数据放在指定位置。因为pCout[pData[i]]的值就是不比他大数据的个数。
//为什么要先减一,因为pCout[pData[i]]保存的是不比他大数据的个数中包括了
//他自己,我的下标是从零开始的!所以要先减一。
--Cout[a[i]] //因为有相同数据的可能,所以要把该位置数据个数减一。
Sort[Cout[a[i]]] = a[i]
}
C#是不? 把数组放入list 然后反转一下就行了 。。。代码如下public static void Main(string[] args)
{
try
{
string[] myArray = new string[] { "Kinger", "Norman", "Mark", "Ruby" }
Sort(ref myArray)
foreach (string str in myArray)
{
Console.Write(str + " ")
}
}
catch (Exception ex)
{
Console.WriteLine(ex.ToString())
}
}
private static void Sort(ref string[] myArray)
{
List<string>list = new List<string>()
foreach (string temp in myArray)
{
list.Add(temp)
}
list.Reverse() //将list 反转
myArray = list.ToArray()
}
for(int i=0i<array.Length/2i++){
string tmp = array[i]
array[i] = array[array.Length - i - 1]
array[array.Length - i - 1] = tmp
}
随手写了个,没校验大小写之类的,你试试行不