МегаПредмет

ПОЗНАВАТЕЛЬНОЕ

Оси и плоскости тела человека Оси и плоскости тела человека - Тело человека состоит из определенных топографических частей и участков, в которых расположены органы, мышцы, сосуды, нервы и т.д.


Отёска стен и прирубка косяков Отёска стен и прирубка косяков - Когда на доме не достаёт окон и дверей, красивое высокое крыльцо ещё только в воображении, приходится подниматься с улицы в дом по трапу.


Дифференциальные уравнения второго порядка (модель рынка с прогнозируемыми ценами) Дифференциальные уравнения второго порядка (модель рынка с прогнозируемыми ценами) - В простых моделях рынка спрос и предложение обычно полагают зависящими только от текущей цены на товар.

Алгоритм сортування методом простого виробу

Міністерство культури України

Київський національний університет культури і мистецтв

Факультет економіки і менеджменту

Кафедра комп’ютерних наук

 

 

Курсова робота

«НАЗВА»

з дисципліни:«Теорія алгоритмів»

 

Підготував:

студент ІІ курсу групи КН-21

Василевський Давид по-батькові

Науковий керівник:

К.ф.-м.н., доцент Ткаченко О.І.

Київ-2012

Зміст

Вступ. 3

Розділ 1. Теоретичні відомості 3

1.1. Алгоритм сортування методом простого виробу. 3

1.1.1. Словесний опис алгоритму. 3

1.1.2. Структура даних. 3

1.1.3. Опис схеми алгоритму. 3

1.1.4. Опис процедури Obmin. 3

1.1.5. Математичний опис. 3

1.1.6. Контрольний приклад. 3

1.2. Хвилевий алгоритм пошуку довгого шляху на зваженому орієнтованому графові. 3

1.2.1. Словесний опис алгоритму. 3

1.2.3. Структури даних. 3

1.2.4. Опис схеми алгоритму. 3

1.2.5. Опис процедури CountTop2. 3

1.2.6. Опис процедури MarkArrow.. 3

1.2.7. Опис процедури BuildWays. 3

1.2.8. Контрольний приклад. 3

Розділ 2. Опис Машини Тюрінга. 3

1.1. Основні поняття. 3

1.2. Постановка завдання. 3

1.3. Ідея вирішення. 3

1.4. Словесний опис алгоритму. 3

1.5. Використовувані символи на стрічці 3

1.6. Структури даних. 3

1.7. Функціональна схема М.Т. 3

1.8. Приклад роботи М.Т. 3

Розділ 3. Програма. 3

3.1. Опис програми командами машини Тюрінга. 3

3.2. Опис програми на мові програмування. 3

Висновки. 3

Список використаних джерел. 3

Додатки. 3


Вступ

 

Розвиток теорії алгоритмів починається з доказу К. Геделем теорем про неповноту формальних систем, що включають арифметику, перша з яких була доведена в 1931 р.. Виникле у зв'язку з цими теоремами припущення про неможливість алгоритмічного дозволу багатьох математичних проблем (зокрема, проблеми виводимості в численні предикатів) викликало необхідність стандартизації поняття алгоритму. Перші стандартизовані варіанти цього поняття були розроблені в 30-х роках XX століття в роботах А. Тюрінга, А. Чьорча та Е. Поста.

Алгоритм - це однозначна послідовність елементарних дій, що забезпечують рішення будь-якої задачі з деякого класу, тобто такий набір інструкцій, який можна реалізувати чисто механічно, незалежно від розумових

Постановка задачі. Побудувати машину Тюрінга для опису алгоритмів арифметичних дій(віднімання, ділення) в десятковій системі числення.

У розділі 1 наведені основні теоретичні відомості, щодо алгоритму сортування методом простого вибору і алгоритму знаходження найдовшого шляху. Розділ 2описує машинуТюрінга. Йдутьтеоритичнівідомості про машину з прикладами. Розділ 3містить в собі опис програми командами машиниТюрінга і опис програми на мовіпрограмування, яка була задана в моїйпостановцізадачі.

 


 

Теоретичні відомості

Алгоритм сортування методом простого виробу

 

Алгоритм простим вибором - це дуже природний спосіб сортування. Зазвичай він першим спадає на думку людині, що зіткнулася з необхідністю впорядкування таблиці. Він є досить простим в освоєнні і тому зручний. Сортування простим вибором не можливе, доки не буде відомо всі елементи масиву, також його недоліком є досить значна затрата часу на впорядкування масиву порівняно з іншими видами сортувань. Ідея його така. Знайдемо в таблиці елемент з найменшим значенням і поміняємо його місцями з першим елементом. Після цього ті ж дії виконаємо з N, що залишилися (без першого), - 1 елементами таблиці, потім з N - 2 елементами і т. д., поки не залишиться один елемент - останній. Він буде найбільшим.

Цей метод для послідовності прямокутників різної висоти. Два перші елементи вже впорядковано. Потім відшукується мінімальний серед інших. Якщо елементи в послідовності можуть бути рівними, то відшукується перший (I) серед мінімальних (таким чином досягається стійкість сортування). Він міняється місцями з третім.

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

Наступником методу простого вибору є - сортування модифікованим методом простого вибору.

Цей метод ґрунтується на алгоритмі пошуку мінімального елементу. У масиві А(1.n) відшукується мінімальний елемент, який ставиться на перше місце . Для того, щоб не втратити елемент, що стоїть на першому місці, цей елемент встановлюється на місце мінімального . Потім в такій же послідовності, виключаючи перший елемент, відшукується мінімальний елемент і ставиться на друге місце і так далі n - 1 раз доки не встане на своє місце передостанній n - 1 елемент масиву А, перемістивши максимальний елемент в самий кінець.

Розглянемо алгоритмічне рішення задачі на прикладі сортування деякого масиву значень за збільшенням. Відповідно до вищеописаного методу нам необхідно кілька разів виконувати операції пошуку мінімального елементу і його перестановку з іншим елементом, тобто потрібно буде кілька разів переглядати елементи масиву з цією метою. Кількість переглядів елементів масиву згідно з описом модифікованого методу простого вибору рівна n - 1, де n - кількість елементів масиву. Таким чином, можна зробити висновок, що проектований алгоритм сортування міститиме цикл, в якому виконуватиметься пошук мінімального елементу і його перестановка з іншим елементом. Позначимо через i - лічильник (номер) переглядів елементів масиву і зображує узагальнений алгоритм сортування на (сх. 1). Нужно написать (див. рис.1 )

Відмітимо, що для перестановки елементів місцями необхідно знати їх порядкові номери, алгоритм перестановки елементів масиву був розглянутий раніше. Алгоритми введення початкового масиву і виведення цього ж масиву після сортування зображені на малюнках 16 і 24 відповідно. Алгоритм пошуку в масиві мінімального елементу і його номера буде аналогічний розглянутому алгоритму пошуку максимального елементу. Проте, в цьому алгоритмі будуть внесені зміни. Для того, щоб визначити які зміни слід внести розглянемо виконання сортування цим методом з акцентом на пошук мінімального елементу на конкретному прикладі. Нехай початковий масив містить 5 елементів (2,8,1,3,7). Кількість переглядів згідно з модифікованим методом простого вибору дорівнюватиме 4. Покажемо в таблиці 1, як змінюватиметься початковий масив на кожному перегляді.

Таблиця 1. Назва

Номер переглядання масиву і Завдань масив Мінімальний елемент Переставлюваний елемент Масив після перестановки
Номер Значення Номер Значення
(2,8,1,3,7) (1,8,2,3,7)
1,(8,2,3,7) 1,(2,8,3,7)
1,2,(8,3,7) 1,2,(3,8,7)
1,2,3,(8,7) 1,2,3,7,8
               

 

Введемо наступні позначення:

К- номер мінімального елементу

J - номер елементу масиву

М і А(К) - одне і теж значення мінімального елементу масиву

i - номер що переставляється з мінімальним елементу

А(i) - значення елементу, що переставляється.

Тоді циклічний алгоритм сортування модифікованим методом простого вибору виглядатиме таким чином (сх.2).

 




©2015 www.megapredmet.ru Все права принадлежат авторам размещенных материалов.