Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Zvit_Kursak_2_list-6.docx
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
216.52 Кб
Скачать

2. Завдання3 Побудова атд

2.1 Постановка задачі

Змоделювати абстрактний тип даних (АТД) список , який використати в Завданні 4. Переписати основні операції роботи з АТД і продемонструвати їх застосування при додаванні та вилученні елементів з АТД.

2.2 Динаміка вмісту списку

Вхідна послідовність: 1, -2, -1, -3, 2.

0) Пустий список – не виділено жодної пам’яті

1) Вводимо 1 - додаємо новий елемент 1

prew

data

next

0

1

0

2) Вводимо-2 - намагаємося вилучити елмент 2

prew

data

next

0

1

0

На екран виводиться повідомлення про те, що немає такого елемента в списку.

3) Вводимо -1 – вилучаємо 1

Список пустий

4) Вводимо -3 - намагаємося вилучити елмент 3На екран виводиться повідомлення про те, що список пустий.

5) Вводимо 2 – додаємо новий елемент 2

prew

data

next

0

2

0

6) Вводимо 3 – додаємо новий елемент 3

prew

data

next

0

2

prew

data

next

1

0




2.2 Результат виконання програми

3. Завдання 4 Застосування атд список

3.1 Постановка задачі

Написати програму для роботи з розрідженими матрицями, представленими у виглядізв’язаних списків:

Транспонування матриці.

3.2 Алгоритм розв’язання

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

down

data

next

0

5

0

Я сконструював список таким чином, щоб він максимально відповідав матриці. Це видно зі схеми :

down

data

next

2

down

data

next

0

3

down

data

next

0

7

0



down

data

next

6

down

data

next

0

5

down

data

next

0

50

0



down

data

next

0

4

down

data

next

0

10



Як бачимо зі схеми клас elementмістить 3 поля : 1 інформаційне та 2 вказівних.В класіlistбуде реалізовано такий механізм додавання нового елемента.Ми будемо долучати новий елемент в поточний рядок аж поки не стане n елементів у рядку.Після цього ми будемо долучати новий елемент в наступний рядок. При цьому на перший елемент наступного рядка вказуватиме вказівникdown першого елемента з попереднього рядка. Вказівники down інших елементів не вказуватимуть ні нащо. Отже, таким чином я створив список, який абстрактно відповідає точній моделі розрідженої матриці.

3.2.2 Блок-схема алгоритму розв’язку задачі.

3.3 Результат виконання програми

Висновок

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

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