Сортировка выбором
//Сортировка выбором
МассивЧисел = Новый Массив;
МассивЧисел.Добавить(2);
МассивЧисел.Добавить(4);
МассивЧисел.Добавить(1);
МассивЧисел.Добавить(5);
МассивЧисел.Добавить(3);
ВерхняяГраница = МассивЧисел.ВГраница();
Для i = 0 По ВерхняяГраница Цикл
Мин = i;
Для j = i + 1 По ВерхняяГраница Цикл
Если МассивЧисел[j] < МассивЧисел[Мин] Тогда
Мин = j;
КонецЕсли;
КонецЦикла;
Если Не МассивЧисел [Мин] = МассивЧисел [i] Тогда
Буфер = МассивЧисел[i];
МассивЧисел[i] = МассивЧисел[Мин];
МассивЧисел[Мин] = Буфер;
КонецЕсли;
КонецЦикла;
Сортировка пузырьком
//сортировка пузырьком
МассивЧисел = Новый Массив;
МассивЧисел.Добавить(2);
МассивЧисел.Добавить(4);
МассивЧисел.Добавить(1);
МассивЧисел.Добавить(5);
МассивЧисел.Добавить(3);
ВерхняяГраница = МассивЧисел.ВГраница();
Для i = 0 По ВерхняяГраница Цикл
Для j = 0 По ВерхняяГраница - i - 1 Цикл
Если МассивЧисел[j] > МассивЧисел[j + 1] Тогда
Буфер = МассивЧисел[j];
МассивЧисел[j] = МассивЧисел[j + 1];
МассивЧисел[j + 1] = Буфер;
КонецЕсли;
КонецЦикла;
КонецЦикла;
Быстрая сортировка
//быстрая сортировка
МассивЧисел = Новый Массив;
МассивЧисел.Добавить(2);
МассивЧисел.Добавить(4);
МассивЧисел.Добавить(1);
МассивЧисел.Добавить(5);
МассивЧисел.Добавить(3);
БыстраяСортировка(МассивЧисел);
Процедура БыстраяСортировка(МассивЧисел, Мин = Неопределено,
Макс = Неопределено)
Если Мин = Неопределено Тогда
Мин = 0;
КонецЕсли;
Если Макс = Неопределено Тогда
Макс = МассивЧисел.ВГраница();
КонецЕсли;
i = Мин;
j = Макс;
m = МассивЧисел[Цел(i + j) / 2];
Пока i <= j Цикл
Пока МассивЧисел[i] < m Цикл
i = i + 1;
КонецЦикла;
Пока МассивЧисел[j] > m Цикл
j = j - 1;
КонецЦикла;
Если i <= j Тогда
Если i <> j Тогда
Буфер = МассивЧисел[i];
МассивЧисел[i] = МассивЧисел[j];
МассивЧисел[j] = Буфер;
КонецЕсли;;
i = i + 1;
j = j - 1;
КонецЕсли;
КонецЦикла;
Если Мин < j Тогда
БыстраяСортировка(МассивЧисел, Мин, j);
КонецЕсли;
Если i < Макс Тогда
БыстраяСортировка(МассивЧисел, i, Макс);
КонецЕсли;
КонецПроцедуры
Сортировка через список значений
МассивЧисел = Новый Массив;
МассивЧисел.Добавить(2);
МассивЧисел.Добавить(4);
МассивЧисел.Добавить(1);
МассивЧисел.Добавить(5);
МассивЧисел.Добавить(3);
//сортировка через список значений
СписокСортировки = Новый СписокЗначений;
СписокСортировки.ЗагрузитьЗначения(МассивЧисел);
СписокСортировки.СортироватьПоЗначению();
МассивЧисел = СписокСортировки.ВыгрузитьЗначения();
Смотрите также:
Электронный учебник по по программированию в 1С Рекомендации по изучению программирования 1С с нуля Программное решение для сдачи и подготовки к экзаменам Программирование в 1С 8.3 с нуля - краткий самоучитель Комплексная подготовка программистов 1С:Предприятие 8.2 Сайты с уроками программирования и со справочниками Youtube-каналы с уроками программирования Сайты для обучения программированию Лекции и уроки