Перейти к публикации

В ближайшее время постараюсь разобраться с картой сервера/ЛК/бб кодами

Внимание, с 14 февраля до 20 февраля могут проходить работы на сервере, где также находится лаунчсервер. В связи с этим авторизация в лаунчере может не работать

SergOmarov

Рекурсивный непашущий qsort

Рекомендованные сообщения

Интересное применение рекурсии.
 
Написание своей функции сортировки полезно, как минимум, для изучения применения рекурсии в алгоритмах сортировки. Но на практике, я предпочитаю встроенную table.sort

local arr={1,3,6,2,7,4,8,9,5}
print(table.unpack(arr))

--по возрастанию
table.sort(arr) 
print(table.unpack(arr))

--по убыванию, или по своему признаку
table.sort(arr,function(a,b) return a>b end)
print(table.unpack(arr))

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

 

Интересное применение рекурсии.

 

Написание своей функции сортировки полезно, как минимум, для изучения применения рекурсии в алгоритмах сортировки. Но на практике, я предпочитаю встроенную table.sort

local arr={1,3,6,2,7,4,8,9,5}
print(table.unpack(arr))

--по возрастанию
table.sort(arr) 
print(table.unpack(arr))

--по убыванию, или по своему признаку
table.sort(arr,function(a,b) return a>b end)
print(table.unpack(arr))

а по какому алгоритму реализован стандартный сортер?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

а по какому алгоритму реализован стандартный сортер?

Полагаю что это быстрая сортировка, и некоторые источники утверждают так-же. Но если не верится, можно глянуть в исходниках Lua.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас

×