Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Практика 1(СД)

.pdf
Скачиваний:
0
Добавлен:
08.10.2025
Размер:
380.02 Кб
Скачать

Министерство науки и высшего образования Российской Федерации Федеральное государственное автономное образовательное учреждение высшего образования

ТОМСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ СИСТЕМ УПРАВЛЕНИЯ И РАДИОЭЛЕКТРОНИКИ (ТУСУР)

Кафедра комплексной информационной безопасности электронно-

вычислительных систем (КИБЭВС)

СОРТИРОВКИ МАССИВОВ Отчёт по практической работе №1 по дисциплине «Структуры данных»

Студент гр. 714-1

_______ И.С. Максимов

__.__.2025

Доцент кафедры КИБЭВС

_______ Е.Е. Лунёва

__.__.2025

Томск 2025

Содержание

 

Введение ......................................................................................................................................................

3

1. Ход работы..........................................................................................................................................

4

1.1

Быстрая сортировка .......................................................................................................................

4

1.2

Сортировка расческой ...................................................................................................................

4

1.3

Сортировка выбором......................................................................................................................

5

1.4

Алгоритмическая сложность ........................................................................................................

8

Заключение.................................................................................................................................................

9

Приложение А ..........................................................................................................................................

10

2

Введение

Целью работы является реализовать сортировку расческой, быструю сортировку и сортировку выбором и продемонстрировать на входных данных работоспособность приложения и корректность реализации алгоритма сортировки.

В ходе работы будут получены навыки:

-работы с массивами в C#;

-реализации алгоритмов сортировки;

-генерации входных данных.

Практическая работа выполнена на языке C# в среде разработки Visual Studio.

ИСПРАВИТЬ ОШИБКИ:

содержание нужно обычным шрифтом. не полужирным

Не делайте внезапных пробелов из нескольких строк между абзацами.

Например, стр 4 внизу, абзац, а потом текст со ссылкой на рисунок. Зачем пропущено несколько строк?

По блок-схеме - посмотрите внимательно блок шестиугольник цикл.

стр 5 - не выровнено по ширине. Следите пожалуйста по всему отчету.

Возможно оформление стилей вам поможет.

3

1.Ход работы

1.1Быстрая сортировка

Быстрая сортировка вставками. Этот алгоритм сегментирует элементы на отсортированные и неотсортированные начиная со второго элемента.

Алгоритм перебирает все элементы второго сегмента и вставляет их в первый сегмент на свою позицию.

На рисунке 1.1 представлен результат работы программы.

Рисунок 1.1 – Быстрая сортировка В приложении А представлен листинг программы быстрой

сортировки.

1.2 Сортировка расческой

Сортировка расческой – более совершенный метод пузырьковой сортировки, был придуман для более простой и быстрой сортировки маленьких чисел в конце массива и больших в его начале.

На рисунке 1.2 представлен результат работы программы.

4

Рисунок 1.2 – Сортировка расческой В приложении А представлен листинг программы сортировки

расческой.

Графический способ задания данного алгоритма сортировки расчёской в виде блок-схемы представлен на рисунке 1.4.

1.3 Сортировка выбором

Сортировка выбором — это простой алгоритм сортировки, суть которого в том, что на каждом шаге алгоритм "выбирает" следующий по порядку элемент, отсюда и название "сортировка выбором".

На рисунке 1.3 представлен результат работы программы.

5

Рисунок 1.3 – Сортировка выбором

6

Рисунок 1.4 – Блок-схема сортировки расчёской

7

В приложении А представлен листинг программы сортировки расчёской

1.4 Алгоритмическая сложность

Ниже в таблице 1 была приведена временная сложность этих алгоритмов, которая покажет их эффективность в работе с массивами.

Таблица 1.1 – Сравнение алгоритмической сложности алгоритмов

Алгоритм

Структура

 

Временная сложность

 

данных

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Лучшее

В худшем

 

 

 

 

 

 

 

 

 

 

Расчёска

Массив

 

O(n*log(n))

 

 

O(n^2)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Быстрая

Массив

O(n*log(n))

 

O(n

^2

)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Выбором

Массив

 

O(n^2)

 

O(n

^2

)

 

 

 

 

 

 

 

 

 

 

Исходя из сложностей алгоритмов можно увидеть, что метод расчёски и быстрой сортировки совпадают в лучшем и худшем случае, в то время как сортировка выбором имеют одинаково высокую временную сложность как в худшем, так и в лучшем случае.

8

Заключение

В результате выполнения данной лабораторной работы были разработаны алгоритмы сортировкой расческой, быстрой сортировки и сортировки выбором, в результате чего были получены навыки работы со структурами данных.

9

Приложение А Программа для сортировки массива быстрой, расческой и выбором

using System;

namespace SortingApp

{

class Program

{

private static int[] array; private const int SIZE = 20;

private static Random random = new Random();

static void Main(string[] args)

{

bool exit = false; while (!exit)

{

InitializeArray();

Console.WriteLine("Сортировки");

Console.WriteLine($"Исходный массив ({SIZE} элементов):"); PrintArray(array);

Console.WriteLine();

10

Соседние файлы в предмете Структуры данных