本文整理汇总了C#中Element.CopyTo方法的典型用法代码示例。如果您正苦于以下问题:C# Element.CopyTo方法的具体用法?C# Element.CopyTo怎么用?C# Element.CopyTo使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Element
的用法示例。
在下文中一共展示了Element.CopyTo方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Main
internal static void Main(string[] args)
{
Element[] pm = new Element[Max + Steps0 + 2];
Element[] saveM = new Element[Max + 1];
Element[] m = new Element[Max + 1];
uint loopInd;
// m = pm + steps0 + 1;
Console.WriteLine("start -- ");
for (loopInd = 1; loopInd <= TestLoopCount; loopInd++)
{
Init(m, Max);
m.CopyTo(saveM, 0);
Console.WriteLine("Масивът преди сортирането:");
Print(m, Max);
ShellSort(m, Max);
Console.WriteLine("Масивът след сортирането:");
Print(m, Max);
Check(m, saveM, Max);
}
}
示例2: SortRadix
private static Element[] SortRadix(Element[] elements)
{
// Допълнителен помощен масив
Element[] helper = new Element[elements.Length];
// Масив брояч и масив с префикси
int[] count = new int[1 << Pow2];
int[] prefixes = new int[1 << Pow2];
// Брой групи
int groups = (int)Math.Ceiling((double)BitsCount / (double)Pow2);
// Битова маска за идентифициране на групи
int mask = (1 << Pow2) - 1;
// Алгоритъмът
for (int c = 0, shiftRight = 0; c < groups; c++, shiftRight += Pow2)
{
// Нулиране на масива брояч
for (int j = 0; j < count.Length; j++)
{
count[j] = 0;
}
// Изброяване на елементите в C-тата група
for (int i = 0; i < elements.Length; i++)
{
count[(elements[i].Key >> shiftRight) & mask]++;
}
// Изчисляване на префиксите
prefixes[0] = 0;
for (int i = 1; i < count.Length; i++)
{
prefixes[i] = prefixes[i - 1] + count[i - 1];
}
// Прехвърляне на елементите от основния в
// спомагателния масив подредени по C-тата група
for (int i = 0; i < elements.Length; i++)
{
helper[prefixes[(elements[i].Key >> shiftRight) & mask]++] = elements[i];
}
// Копиране на спомагателния масив в основния
// и започване отначало до последната група
helper.CopyTo(elements, 0);
}
// Масивът е сортиран
return elements;
}