Лабораторная работа по C#. Работа со структурами

Задача: составить инвентарную ведомость игрушек, включив следующие данные: название игрушки, ее стоимость (в руб.), возрастные границы детей, для которых  предназначена игрушка. Вывести в новый файл информацию о тех игрушках, которые предназначены для детей от N до M лет, отсортировав их по стоимости.

Замечания:

  1. подразумевается, что исходная информация хранится в текстовом файле input.txt, каждая строка которого содержит полную информацию о некотором объекте,
  2. результирующая информация должна быть записана в файл output.txt,
  3. для хранения данных внутри программы организовать массив структур,
  4. в типе структура реализуется метод CompareTo интерфейса IComparable, перегружается метод ToString базового класса object и необходимые операции отношения, поля данных и дополнительные методы продумайте самостоятельно.

Читать далее

Лабораторная работа по C#. Сортировка двумерного массива методом пузырька

Задача: создать двумерный массив размерностью m на n элементов, заполнив его случайными числами в диапазоне от 0 до 9. Отсортировать элементы массива по возрастанию вначале по строкам, а затем по столбцам. Вывести на экран исходный массив, массив отсортированный по-строчно, массив отсортированный по столбцам. Для сортировки применить метод пузырька.

Читать далее

Сортировка массива C#. Алгоритм «Сортировка вставками»

Сортировка вставками — это алгоритм, в котором элементы массива просматриваются по одному, и каждый элемент элемент размещается в подходящее место среди ранее упорядоченных элементов. С этим алгоритмом сортировки многие из нас сталкиваются в жизни, не подозревая, что используют сортировку вставками — когда сортируют деньги в кошельке. Например, вы получаете в магазине сдачу — 550 рублей. Открываете кошелек — там лежит 200, 1000 и 5000 рублей. Те, кто любит порядок делают так: берут 50 рублей и вставляют их в подходящее место (в самое начало), затем берут 500 рублей и вставляют между 200 и 1000 рублями и в итоге получают упорядоченный «массив» денег 50, 200, 500, 1000 и 5000 рублей. Вот наглядный пример сортировки вставками. Этот алгоритм чем-то напоминает гномью сортировку, но требует вложенного массива.

Читать далее

Сортировка массива C#. Алгоритм «Гномья сортировка»

Название этого алгоритма сортировки происходит от предполагаемого поведения садовых гномов при сортировке садовых горшков. Так Дик Грун описал поведение алгоритма: «Гномья сортировка основана на технике, используемой обычным голландским садовым гномом. Это метод, которым садовый гном сортирует линию цветочных горшков. По существу он смотрит на текущий и предыдущий садовые горшки: если они в правильном порядке, он шагает на один горшок вперёд, иначе он меняет их местами и шагает на один горшок назад. Граничные условия: если нет предыдущего горшка, он шагает вперёд; если нет следующего горшка, он закончил». Собственно, в этом описании и заложен весь алгоритм гномьей сортировки массива в C#.

Читать далее

Сортировка массива C#. Алгоритм «Сортировка перемешиванием»

В литературе можно также встретить такие названия сортировки перемешиванием — шейкерная сортировка и двунаправленная пузырьковая сортировка. Алгоритм представляет собой одну из разновидностей «сортировки пузырьком«. Основное отличие заключается в том, что в классической сортировке пузырьком происходит однонаправленное движение элементов (снизу — вверх), в то время, как сортировке перемешиванием мы сначала проходим снизу-вверху, а затем сверху-вниз.

Читать далее

Сортировка массива C#. Алгоритм «Сортировка пузырьком»

Алгоритм сортировки пузырьком относится к простейшим алгоритмам сортировки и часто применяется в учёбных целях, однако, в практическом плане применяется крайне редко (лишь на небольших массивах). Сложность алгоритма: O(n2). Смысл алгоритма состоит в том, что самые «легкие» (например, меньшие по значению) элементы массива как бы «всплывают» (перемещаются к началу массива) , а самые «тяжелые» — «тонут» (перемещаются в конец массива). Отсюда и название «Сортировка пузырьком»

Читать далее

Сортировка массива C#. Алгоритм «Сортировка выбором»

На данный момент у нас уже хватает знаний, чтобы попробовать написать простейшую программу в C#. Но, простейшая — не значит бесполезная. Наша программа будет сортировать массив C#. При написании различных программ нам часто приходится сталкиваться с таким понятием как сортировка. Например, необходимо отсортировать список людей по алфавиту или произвести сортировку оценок учащихся по возрастанию. И для того, чтобы максимально эффективно решить такую задачу мы должны знать не только сам язык программирования, но и алгоритмы сортировки — их сложность, как они реализуются на практике и так далее. Сегодня мы рассмотрим самый простой алгоритм сортировки массива C# — сортировку выбором.

Читать далее