К основному контенту

Кто тут самый шустрый?

Код для проверки был самый простой:
using System;

namespace bs
{
 class MainClass
 {
  public static void Main (string[] args)
  {
   Random r = new Random();
    int max=100000;
   int[] c=new int[max];
   int t=0;
   for(int i=0;i<max;i++)
     c[i]=r.Next(1000);
   
   System.Console.WriteLine(DateTime.Now);
   for(int i=0;i<max;i++)
         {
             for(int j=0;j<max;j++)
             {
                 if(c[i]>c[j])
                 {
                     t=c[i];
                     c[i]=c[j];
                     c[j]=t;
                 }
             }
         }
   System.Console.WriteLine(DateTime.Now);
   Console.WriteLine ("OK");
  }
 }
}
 
Т.е. как вы заметили обычный метод пузырьковой сортировки. 
Как быстро будет осуществлен перебор массива и перестановка. 
Код был адаптирован под следующие языки:
 



c# java c++ d groovy Windows Host jscript
17 sec 20 sec 57 sec 37 sec 40 min более часа
Последние два - интерпретаторы, c++ и d компилируют исходный код в машинный, java и c# в байт-код виртуальной машины. Groovy выполняется в виртуальной машине java. ОС - виндоуз.
Вот такие не совсем предсказуемые результаты.

Комментарии

Популярные сообщения из этого блога

Кирилица в Arch Linux

После вчерашних обновлений в консоли Arch Linux при выборе русской локали вместо букв печатаются белые квадратики. Очевидно, что по какой-то причине не загружается прописанный в rc.conf шрифт. Временное лекарство от этого: выполнить команду setfont cyr-sun16 . Еще у меня в момент начальной загрузки появляется рябь на экране как от сильных электромагнитных помех в ЭЛТ, хотя у меня ЖК. Может быть это как-то связано.

Сортировка массивов в groovy

Любой массив в java и groovy можно отсортировать статическим методом: Arrays.sort(c); причем это будет очень быстро сто тысяч элементов типа int сортируются за 1 секунду на celeron M 1,8 Mg. Если это массив объектов можно использовать перегруженный метод Arrays.sort(c,comporator);

Arch Linux - руссификация консоли

Вчера, придя с работы, как всегда затеял InstallFest. Уже практически не задумываясь установил свежий арч. И тут заметил что в tty вместо русского - квадратики. Под утро нашел таки сообщение на форме, что в этом виноваты дрова от видео. Там правда речь шла о нвидиа, а у меня ати. Буду пробовать. И еще в lxterminal обратил внимание что сообщения на русском, а то что я вводил на русском потом возвращается системой в виде юникод-символов. Вот такие дела. UPDATE: драйвер не причем. переустановил в консоли(до установки X) по прежнему квадратики вместо букв. неужели придется переключатся на инглиш? Заметил что initscripts скачался c какого-то зеркала не с яндекса. возможно причина в нем.