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

ASD_Lecture01

.pdf
Скачиваний:
19
Добавлен:
12.02.2016
Размер:
9.5 Mб
Скачать

Теорія алгоритмів

Історія (20 ст.)

інформатики

Класична структура машини фон Неймана

Джон (Янош) фон Нейман Еміль Леон Пост John von Neumann

ОбчислювальнаLeon Post машина є машиною з архітектурою фон Неймана, якщо:

1.Програма та дані зберігаються в одній загальній пам'яті.

2.Кожна комірка пам'яті машини ідентифікується унікальним номером, який називається адресою.

3.Різні слова інформації (команди та дані) розрізняються за способом використання, але не за способом кодування та структурою представлення в пам'яті.

4.Кожна програма виконується послідовно, починаючи з першої команди, якщо немає спеціальних вказівок. Для зміни цієї послідовності використовуються команди передачі управління.

Лекція 1

Теорія алгоритмів

Що таке алгоритм?

На сьогодні не існує формального визначення алгоритму.

Поняття алгоритму, як і поняття інформації, точно визначити неможливо. Тому зустрічаються найрізноманітніші визначення - від "наївно-інтуїтивних" ("алгоритм - це план рішення задачі") до “строго формалізованих" (нормальні алгоритми Маркова).

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

Лекція 1

Теорія алгоритмів

Властивості алгоритму

1.Фінітність (скінченість): завжди повинен закінчуватися після виконання скінченої кількості кроків.

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

3.Масовість - початкові дані для алгоритму можна вибирати із певної (можливо, нескінченної) множини даних; це означає, що алгоритм призначений не для однієї конкретної задачі, а для класу однотипних задач.

4.Елементарність - кожен крок алгоритму має бути простим, елементарним, можливість виконання якого людиною або машиною не викликає сумнівів.

Лекція 1

Алгоритми і структури даних

Властивості алгоритму

1.Фінітність: завжди повинен закінчуватися після виконання скінченої кількості кроків.

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

3.Масовість - початкові дані для алгоритму можна вибирати із певної (можливо, нескінченної) множини даних; це означає, що алгоритм призначений не для однієї конкретної задачі, а для класу однотипних задач.

4.Елементарність - кожен крок алгоритму має бути простим, елементарним, можливість виконання якого людиною або машиною не викликає сумнівів.

Лекція 1

Теорія алгоритмів

Властивості алгоритму

1.Фінітність: завжди повинен закінчуватися після виконання скінченої кількості кроків.

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

3.Масовість - початкові дані для алгоритму можна вибирати із певної (можливо, нескінченної) множини даних; це означає, що алгоритм призначений не для однієї конкретної задачі, а для класу однотипних задач.

4.Елементарність - кожен крок алгоритму має бути простим, елементарним, можливість виконання якого людиною або машиною не викликає сумнівів.

Лекція 1

Теорія алгоритмів

Властивості алгоритму

1.Скінченість (фінітність): завжди повинен закінчуватися після виконання скінченої кількості кроків.

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

3.Масовість - початкові дані для алгоритму можна вибирати із певної (можливо, нескінченної) множини даних; це означає, що алгоритм призначений не для однієї конкретної задачі, а для класу однотипних задач.

4.Елементарність - кожен крок алгоритму має бути простим, елементарним, можливість виконання якого людиною або машиною не викликає сумнівів.

Лекція 1

Теорія алгоритмів

Властивості алгоритму

5.Детермінованість (визначеність) - однозначність процесу виконання алгоритму; це означає, що при заданих початкових даних кожне дане, отримане на певному (не початковому) кроці, однозначно визначається даними, отриманими на попередніх кроках.

6.Результативність - алгоритм має засоби, які дозволяють відбирати із даних, отриманих на певному кроці виконання, результативні дані, після чого алгоритм зупиниться.

7.Наявність вхідних даних. Алгоритм має деяку кількість вхідних даних, що задаються до початку його роботи або визначаються динамічно під час його виконання.

8.Наявність вихідних даних. Алгоритм має одне або декілька вихідних даних, що мають певний зв'язок із вхідними даними.

Лекція 1

Теорія алгоритмів

Властивості алгоритму?

5.Детермінованість (визначеність) - однозначність процесу виконання алгоритму; це означає, що при заданих початкових даних кожне дане, отримане на певному (не початковому) кроці, однозначно визначається даними, отриманими на попередніх кроках.

6.Результативність - алгоритм має засоби, які дозволяють відбирати із даних, отриманих на певному кроці виконання, результативні дані, після чого алгоритм зупиниться.

7.Наявність вхідних даних. Алгоритм має деяку кількість вхідних даних, що задаються до початку його роботи або визначаються динамічно під час його виконання.

8.Наявність вихідних даних. Алгоритм має одне або декілька вихідних даних, що мають певний зв'язок із вхідними даними.

Лекція 1

Теорія алгоритмів

Властивості алгоритму?

5.Детермінованість (визначеність) - однозначність процесу виконання алгоритму; це означає, що при заданих початкових даних кожне дане, отримане на певному (не початковому) кроці, однозначно визначається даними, отриманими на попередніх кроках.

6.Результативність - алгоритм має засоби, які дозволяють відбирати із даних, отриманих на певному кроці виконання, результативні дані, після чого алгоритм зупиниться.

7.Наявність вхідних даних. Алгоритм має деяку кількість вхідних даних, що задаються до початку його роботи або визначаються динамічно під час його виконання.

8.Наявність вихідних даних. Алгоритм має одне або декілька вихідних даних, що мають певний зв'язок із вхідними даними.

Лекція 1

Теорія алгоритмів

Властивості алгоритму

5.Детермінованість (визначеність) - однозначність процесу виконання алгоритму; це означає, що при заданих початкових даних кожне дане, отримане на певному (не початковому) кроці, однозначно визначається даними, отриманими на попередніх кроках.

6.Результативність - алгоритм має засоби, які дозволяють відбирати із даних, отриманих на певному кроці виконання, результативні дані, після чого алгоритм зупиниться.

7.Наявність вхідних даних. Алгоритм має деяку кількість вхідних даних, що задаються до початку його роботи або визначаються динамічно під час його виконання.

8.Наявність вихідних даних. Алгоритм має одне або декілька вихідних даних, що мають певний зв'язок із вхідними даними.

Лекція 1

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]