В компьютере информация хранится в памяти. Память можно представить как последовательность ячеек, как показано на изображении ниже. В каждой ячейке находится один элемент данных.

При хранении данных в памяти структура данных определяет их порядок и расположение.
Пример 1: естественный порядок
Возьмём в качестве примера записную книжку с номерами телефонов. Сегодня люди чаще всего хранят контакты в телефонах, но давай представим прошлое, когда всё записывали на бумаге. Каждый раз, когда ты хотел сохранить чей-то номер, ты записывал имя и номер на странице записной книжки.
Единственный способ найти нужный номер — просмотреть все записи по порядку, начиная с первой. Можно начать с конца или искать наугад, но это займет столько же времени и усилий. Если в записной книжке всего несколько номеров, нужный найдется быстро. Но если их около 500, это будет сложно.
Пример 2: алфавитный порядок
Давайте теперь расположим записи в алфавитном порядке по именам. Эти данные уже имеют структуру, так как они изначально были организованы определенным образом.
Поиск нужного человека стал проще благодаря первой букве имени, которая указывает на примерное расположение номера. Но что делать, если нужно добавить новую запись, не нарушая алфавитный порядок?
Для этого нужно выполнить несколько шагов: добавить пустую строку в конце, переписать все строки с конца и вставить новое имя и телефон. Если в списке 500 элементов, то на это уйдет больше часа, даже если одна операция занимает всего 10 секунд.
Плюсы и минусы
Подводя итог, отметим, что расположение данных в порядке их добавления — простой метод. При добавлении новых записей нужно сделать только одну операцию. Однако поиск по такому списку занимает много времени.
Метод сортировки данных по алфавиту удобен для поиска, но требует больше усилий и времени на добавление новых записей.
У каждого подхода есть свои плюсы и минусы. Выбор зависит от того, как ты планируешь использовать телефонную книгу. Если планируешь редко обновлять список, лучше выбрать второй метод. Если же ты часто добавляешь новые данные, но редко ищешь их, первый метод будет удобнее.
