Обычно так обозначают приватную переменную в классе. В Pawn так можно обозначать глобальные static переменные в различных библиотеках. А причина использования здесь не ясна.
Вид для печати
Скорее всего, расчёт на быдлокодеров, которые могут назвать глобальную переменную "array" (чем это чревато см. здесь, пункт 1).
По сути это ни что иное как поощрение плохих практик программирования, поэтому я бы не советовал так называть аргументы функции и локальные переменные. Проблемы нужно решать, а не избегать.
Лично я предпочитаю CombSort :smile:
10000 чисел пересортировало с таким результатом:PHP код:
stock CombSort(array[], array_size = sizeof(array))
{
new gap = array_size;
new swapper;
new bool: swap_status = true;
while(gap != 1 || swap_status)
{
gap = (gap*10)/13;
if(!gap)
{
gap = 1;
}
swap_status = false;
for(new i = 0; i < array_size-gap; i++)
{
if(array[i] > array[i+gap])
{
swapper = array[i];
array[i] = array[i+gap];
array[i+gap] = swapper;
swap_status = true;
}
}
}
return 1;
}
PHP код:
CombSort: 119 ms
Принимай во внимание то, что характеристики компьютеров с автором темы у вас разные, соответственно тест скорости отдельно этой функции объективно сравнить с теми, что в шапке темы, нельзя)
Первый пункт в той теме как-то заморочен. Переменные не обязательно называть именно длинными именами, достаточно просто уникальными
Изменил порядок сортировки в CombSort на убывающий, как в 1-м посте, и дополнил своим вариантом CombSortOpt, адаптированным под особенности Pawn.Код:SelectionSort: 2521
BubbleSort: 5826
GnomeSort: 6813
CombSort: 55
CombSortOpt: 22
Хоть я и добавил проверку отсортированных данных, всё равно такое ощущение, будто что-то сделал не так - уж слишком подозрительна разница в результатах.
Ну так короткие это не обязательно однобуквенные, если по тексту.
Если просто стараться сделать длиннее, то шанс совпадения возрастёт у таких же любителей писать названия длиннее, поэтому важнее присваивать имя, ориентируясь на ситуации в коде, где эта переменная будет использоваться... или просто что-то редко встречающееся.
Вообще шанс совпадений будет всегда, просто главная мысль как обычно не допускать такой банальщины, как называние переменных слишком абстрактными именами, а-ля "data, str, x". А слишком длинные названия очень часто просто неудобно читать, особенно если они часто вызываются.
Нигде? Я написал про то, что в тестах просто не было необходимости в принципе, ибо они не комплексные