コード例 #1
0
 public static void DoFisherYatesShuffle(this object[] objects)
 {
     for (int i = objects.Length - 1; i > 0; i--)
     {
         //int j = GetNextRandom(i);
         Swapper.SwapValuesAtIndices(objects, i, GetNextRandom(i));
     }
 }
コード例 #2
0
        //public static void InsertionSorter(int[] numbers)
        //{
        //    for (int i = 1; i < numbers.Length; i++)
        //    {
        //        for (int j = i; j > 0 && numbers[j - 1] > numbers[j]; j--)
        //        {
        //            //Swapper.SwapValuesAtIndices(numbers, j, j - 1);
        //            numbers.SwapValuesAtIndices(j, j - 1);
        //        }

        //    }
        //}
        public static void InsertionSorter(int[] numbers)
        {
            for (int i = 1; i < numbers.Length; i++)
            {
                //int imin = i;
                for (int j = i; j > 0; j--)
                {
                    if (numbers[j - 1] > numbers[j])
                    {
                        //imin = j;
                        Swapper.SwapValuesAtIndices(numbers, j, j - 1);
                    }
                }
            }
        }