Язык Haskell: О пользе и вреде лени: различия между версиями
Содержимое удалено Содержимое добавлено
→Быстрая сортировка: - уж больно мелко делает текст тэг <source> </source> |
|||
Строка 349:
Выше мы рассматривали простые примеры, от которых пока далеко до реальных промышленных задач. А сейчас мы рассмотрим первый серьёзный алгоритм — [[w:Быстрая сортировка|быструю сортировку Хоара]]. Несмотря на свою «серьёзность», выглядит он подозрительно просто:
<code>
</code> Запись «<code>qsort [] = []</code>» означает, что если на вход дан пустой
Строка 363 ⟶ 364 :
Тот же алгоритм на языке Си (только для целых чисел) требует гораздо больше кодирования:<br />
<big>
<source lang=c>void qsort(int * ds,int *de,int *ss){
int vl = *ds,*now = ds + 1,*inl = ss,*ing = ss + (de - ds);
Строка 375 ⟶ 376 :
qsort(ds + (inl - ss),de,inl + 1);
}</source>
</big>
Подобным образом на Haskell многие алгоритмы можно записать гораздо короче, нежели на Си, Паскале,… да и, вообще, любом императивном языке.
|