Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Delphi.doc
Скачиваний:
18
Добавлен:
29.10.2018
Размер:
3.35 Mб
Скачать

Лабораторна робота № 6 Динамічні структури даних

Мета роботи:

1. Засвоєння принципів роботи з динамічними структурами даних.

2. Отримання практичних навиків розробки алгоритмів і програм для роботи зі списками, чергами, стеками і деревами.

Завдання:

1. Задано текст, в якому є круглі дужки. Розробити програму, яка перевіряє збалансованість дужок у заданому тексті. Якщо дужки збалансовані, то для кожної пари друкує їх номери позицій у тексті за зростанням номерів дужок, що закриваються. Якщо дужки не збалансовані, то виводить повідомлення про це.

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

3. Розробити програму, яка створює список , елементами якого є цілі числа. Вилучає із списку всі від’ємні елементи і поміщає їх у кінець списку в оберненому порядку до їх розміщення. Друкує модифікований список по п’ять елементів у рядку.

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

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

6. Розробити програму, яка створює список , елементами якого є цілі числа і дописує в кінець цього списку всі елементи в оберненому порядку до їх розміщення в (тобто будується симетричний список, наприклад, 1,2,3,3,2,1). Друкує отриманий список по сім елементів у рядку.

7. Розробити програму, яка створює список , елементами якого є цілі числа. Для заданих чисел , друкує в порядку розміщення всі числа списку менші від , потім всі числа з діапазону і, нарешті, всі числа більші від . (Список переглядається тільки один раз).

8. Розробити програму, яка створює список , елементами якого є дійсні числа. Перетворює список так, щоб спочатку розміщувалися всі невід’ємні елементи зі збереженням, порядку їх розміщення, а потім всі від’ємні в оберненому порядку. Друкує модифікований список по п’ять елементів у рядку.

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

10. Розробити програму, яка створює списки , , , елементами яких є цілі числа. Замінює перше входження списку в список (якщо таке є) на список . Друкує модифікований список по десять елементів у рядку.

11. Розробити програму, яка створює список , елементами якого є дійсні числа. Перетворює список за правилом: якщо числа упорядковані за неспаданням , то список залишається без зміни, інакше елементи у списку розміщуються в оберненому порядку . Друкує модифікований список по п’ять елементів у рядку.

12. Розробити програму, яка створює список , елементами якого є дійсні числа. Обчислює добуток і друкує значення добутку та всі елементи списку . (Для розв’язування задачі корисно використати двозв’язний список).

13. Розробити програму, яка створює список , елементами якого є дійсні числа . Будує список, елементами якого є числа , . Друкує отриманий список по п’ять елементів у рядку.

14. Розробити програму, яка створює списки і, елементами яких є цілі числа (елементи у списку упорядковані за неспаданням, а у списку розміщені довільно). Вставляє елементи списку у так, щоб залишився упорядкованим. Друкує модифікований список по десять елементів у рядку.

15. Розробити програму, яка створює список , елементами якого є малі латинські літери. Друкує в алфавітному порядку всі літери, що входять у список , по одному разу, по декілька разів і не входять жодного разу.

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

17. Задано текст, у якому є круглі дужки. Розробити програму, яка перевіряє збалансованість дужок у заданому тексті. Якщо дужки збалансовані, то для кожної пари друкує їх номери позицій у тексті за зростанням номерів дужок що відкриваються. Якщо дужки не збалансовані, то виводить повідомлення про це.

18. Розробити програму, яка створює список , елементами якого є символи. Вилучає із списку всі повторні входження кожного символу. Друкує модифікований список по п’ять елементів у рядку.

19. По кругу розміщаються дітей. Відлік починається від першого і кожний -ий вилучається, а круг змикається. Розробити програму, яка визначає порядок вилучення дітей із круга.

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

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

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

23. Задана без помилок символьна формула виду: <формула>::=<цифра> М(<формула>,<формула>)m(<формула>,<формула>; <цифра>::=012…9, де М, m – функції обчислення максимуму і мінімуму відповідно. Розробити програму обчислення значення заданої формули (наприклад, М(5,m(6.8))–> 6).

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

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

26. Розробити програму, яка створює список , елементами якого є цілі числа Вставляє у список перед кожним входженням елемента елемент . Друкує модифікований список по п’ять елементів у рядку.

27. Розробити програму, яка створює список , елементами якого є цілі числа. Вилучає із списку після кожного входження елемента наступний елемент і поміщає всі вилучені елементи на початок списку в порядку їх розміщення. Друкує модифікований список по десять елементів у рядку.

28. Розробити програму, яка створює бінарне дерево , елементами якого є дійсні числа, будує і друкує його копію .

29. Розробити програму, яка створює списки і, елементами яких є слова. Знаходить і вилучає із списку всі слова, що також містяться у списку . Друкує модифікований список, розділяючи слова пробілами.

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

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