русс | укр

C# - Главная
Контакты
Задайте вопрос...
Просмотр всех вопросов


Пространство имен
  ► System
  ► Microsoft


Для учеников (начинающих)
  ► Видео уроки
  ► Обучение
  ► Примеры программ
  ► Секреты в Си Шарп

Для профессионалов
  ► Обучение
  ► Примеры программ
  ► Задачки - для тебя!










Сортировка на языке Си Шарп

Сортировка - это упорядочевание по возрастанию или по убыванию. Она применяется для:

  • сортировки массивов;
  • сортировки строк или букв;
  • сортировки структур по определенному элементу структуры.

Смысл сортировки:

  • она нужна для нахождения максимального и минимального элемента;
  • для нахождения границы чисел;
  • для поиска элементов в массиве, в структуре...

Пример кода, который выполняет сортировку массива по возрастанию:

// простейшая пузырьковая сортировка
int s = 1; // переменная для указания сортировка по возрастанию или по убыванию. 1 - по возростанию, -1 - по убыванию
for (int j = 0; j < mas.Length; j++) // простейшая пузырьковая сортировка
for (int i = 0; i < mas.Length-1; i++)
{

     if (mas[i]*s > mas[i + 1]*s)
     {
          temp = mas[i];
          mas[i] = mas[i + 1];
          mas[i + 1] = temp;
     }
}
// конец пузырьковой сортировки

 

Пример кода, который выполняет сортировку массива по убыванию:

// простейшая пузырьковая сортировка
int s = -1; // переменная для указания сортировка по возрастанию или по убыванию. 1 - по возростанию, -1 - по убыванию
for (int j = 0; j < mas.Length; j++) // простейшая пузырьковая сортировка
for (int i = 0; i < mas.Length-1; i++)
{

     if (mas[i]*s > mas[i + 1]*s)
     {
          temp = mas[i];
          mas[i] = mas[i + 1];
          mas[i + 1] = temp;
     }
}
// конец пузырьковой сортировки

 

Все зависит от значения переменной s. Если s равно 1, то сортировка будет по возрастанию, если -1, то сортировка будет по убыванию.

Язык Си Шарп предоставляет оптимизированные сортировки массивов, которые работают быстрее ваших алгоритмов:

Array.Sort(mas); // вызов метода сортировки

Метод Sort имеет 17 перегрузок. Их вы можете посмотреть в msdn. Вот один из примеров:

Array.Sort(mas, 4,5);

В данном случае происходит сортировка начиная с 4-ого элемента массива, и сортируются 5 элементов: 4-й, 5-й, ..., 8-й. По умолчанию сортирока происходит по возрастанию.

Если вам нужно по убыванию, то можете использовать метод: Reverse, он изменяет порядок элементов в массиве.

Поэтому:

Array.Sort(mas);
Array.Reverse(mas); // это сортировка по убыванию

Пример программы: сортировка массива на Си Шарп.

Просмотров: 26930






© 2012 ci-sharp.ru При использовании материала прямая индексирующая ссылка на сайт ОБЯЗАТЕЛЬНА.
Права строго защищены нормами международного права, интеллектуальной собственности и авторского права.