немає. Тільки якщо значення однакові, потрібно перевіряти послідовно збіг по буквах. Загальний час роботи є O (n + m). Даний метод накладає деякі обмеження на текст і шуканий рядок [2]. p align="justify"> У курсовій роботі використовували алгоритм послідовно пошуку, так як даний алгоритм є найпростішим алгоритмом пошуку, що не накладає ніяких обмежень на текс або шуканий рядок і має найпростішу реалізацію.
2. Опис використаних структур даних
.1 Структура для зберігання довідника
На практиці (залежно від необхідної задачі) використовуються різні способи представлення даних в пам'яті комп'ютера: 1) список 2) масив 3) бітові поля 4) дерева і т.д.
Для зберігання даних телефонної книги використовували двохзв'язной список. Кожен елемент списку складається з двох полів: інформаційного, де зберігаються дані абонента (ПІБ, адреса, електронна пошта, номери телефонів) і поля зв'язок, де утримується покажчик на наступного і попереднього абонента телефонної книги. p align="justify"> Графічно структура списку виглядає наступним чином:
В
Рис. 2.1 Структура двусвязного списку
У програмі список реалізований в наступному вигляді:
= ^ Abonent;// посилання на запис абонент
Abonent = record// абонент: AnsiString;// імяабонента: AnsiString ;//прізвище: AnsiString;// батькові: LinkTel;// спісоктелефоновабонента: AnsiString;// адресабонента: AnsiString ;//пошта : LinkAbonent;// следующийабонентвспискеабонентов: LinkAbonent;// попередній: Integer;// порядковыйномеротображаемогоабонента
show: Integer;// відображається чи ні абонент;
Гідність цієї структури даних, крім можливості змінювати розмір, - це простота реалізації. Також, завдяки наявності посилань, кожен елемент у списку, на відміну від масиву, може займати різний обсяг пам'яті. Адреса першого елемента в лінійному списку однозначно визначається адресою самого спіска.Легкость додавання та видалення елементів так само є одним з достоїнств даної структури. br/>
.2 Структура для зберігання номерів телефонів
Для зберігання номерів телефону використовували так само список, але в даному випадку однозв'язний. Кожен елемент представляється у вигляді двох полів: інформаційного (номери телефонів) і поля зв'язок (покажчик на наступний елемент списку). p align="justify"> Графічне подання даної структури:
В
Рис. 2.2 Структура односвязного списку
Структура зберігання номерів телефону в програмі представлена ​​в наступному вигляді:
Telephone = record// телефон: AnsiString;// номертелефона
typeTel: TypeTeleph...