Рубрики
Без рубрики

Что такое массив в информатике?

В информатике структура данных массива состоит из коллекции элементов – обычно того же типа, такого же, как целое число или строку. Каждый элемент идентифицируется индексом массива. Массивы предназначены для обеспечения чрезвычайно эффективного доступа отдельных элементов по индексу: сложность выполнения постоянна с увеличением размера массива! Причина в том, что … Что такое массив в информатике? Читать далее “

Автор оригинала: Chris.

В информатике структура данных массива состоит из коллекции элементов – обычно того же типа, такого же, как целое число или строку. Каждый элемент идентифицируется индексом массива. Массивы предназначены для обеспечения чрезвычайно эффективного доступа отдельных элементов по индексу: Сложность выполнения постоянная С растущим размером массива! Причина в том, что индекс элемента рассчитывается из индекса элемента кортежа с использованием закрытой формулы.

Array видео

Определение массива

Массив – это заказал Коллекция Элементы Индексируется смежные целые числа Отказ

  • Заказал : Порядок элементов фиксирован и четко определен, в отличие от наборы которые неупорядочены.
  • Элементы : Массив состоит из элементов, в подавляющем большинстве случаев эти элементы имеют один и тот же тип.
  • Смежные индексы : Индексы начинаются от 0 и увеличивают на один для каждого последующего элемента. Все целые числа между 0 и N-1 указывают на один элемент. В серии индексов нет «дырок».

Приложения массива

Массивы широко используются на всех основных языках программирования, такие как C ++, Java и Python. Например, поисковая система может хранить все URL-адреса поползных веб-сайтов в массиве. Впоследствии он может сортировать URL в алфавитном порядке на основе структуры данных массива. Массив часто является структурой данных выбора для хранения данных надежно и эффективно, позволяя легко доступу всех элементов данных.

Вот некоторые Применение массивов:

  • Массивы могут реализовывать математические векторы.
  • Массивы могут реализовывать многомерные матрицы.
  • Массивы используются для реализации других структур данных, таких как списки, наборы, хэш-таблицы, стеки и многое другое. Эти структуры данных, в свою очередь, используются каждой одной нетривиальной программой программного обеспечения.
  • Массивы используются в списках соседних и матрицах для представления структур данных графика. Вот некоторые приложения графов.
  • Массивы используются в планировке ЦП для создания списков приоритетов для определения того, какой процесс для планирования следующего на CPU.
  • Массивы используются сортировочными алгоритмами, такими как Quicksort Отказ

Массивная среда выполнения и эффективность пространства

Большинство языков программирования хранят массив очень эффективно в памяти. Например, он помещает все элементы в одинаковую область памяти, так что большая куча значений массива может быть счетов сразу с памяти.

Вот эффективность выполнения массива для разных операций:

Доступ O (1) O (1)
Поиск На) На)
Вставка На) На)
Удаление На) На)

Как правило для большого пальца : Изменение массива относительно дорого, а чтение элементов из массива чрезвычайно дешево! Оптимальное образец использования для массивов – никогда не изменять его и часто доступа к отдельным элементам ( «Read-No-запись» ).

Космическая сложность массива O (n) Для N элементов: каждый элемент требует явного местоположения памяти. Таким образом, более элементы массива приводят к большему количеству требований к пространству. Тем не менее, отношения растет пропорционально, а не быстрее, с увеличением количества элементов: двойные элементы требуют двойного пространства.

Индексирование массива

Вы можете получить доступ к каждому элементу в массиве через индексы.

  • Индекс первого элемента массива 0.
  • Индекс второго элемента составляет 1.
  • Индекс i-го элемента I-1.

Поскольку первый индекс массива обычно является целым числом 0, большинство компьютерных ученых относятся к нему как Индексирование на основе нуля Отказ

Вот пример питона индексации массива с использованием Массив строк :

>>> authors = ['Rowling', 'King', 'Brown', 'Peterson']
>>> authors[0]
'Rowling'
>>> authors[1]
'King'
>>> authors[2]
'Brown'
>>> authors[3]
'Peterson'

Методы массива в Python

Обратите внимание, что Python только реализует список Тип данных в стандартной библиотеке. Если вы хотите использовать массивы, вам нужно импортировать Numpy Library Отказ Однако тип данных списка используется очень похожим на тип данных массива на других языках программирования, поэтому мы используем его взаимозаменяемо здесь.

Это наиболее важные методы массива/списка в Python:

array.append (x) Добавляет элемент X до массива.
Array.Clear () Удаляет все элементы из массива, который становится пустым.
Array.Copy () Возвращает копию массива. Копирует только массив, а не его элементы (неглубокая копия).
Array.Count (x) Подсчитывает количество вхождений элемента X в массиве.
Array.extend (ИТЕР) Добавляет все элементы ITER ITER (например, список) для массива.
array.index (x) Возвращает положение (индекс) первого вхождения значения x в массиве.
array.insert (i, x) Вставляет элемент X в положение (индекс) I в массиве.
array.pop () Удаляет и возвращает окончательный элемент массива.
array.remove (x) Удаляет и возвращает первый вхождение элемента X в массиве.
Array.Reverse () Переверняет порядок элементов в массиве.
array.sort () Сортирует элементы в массиве в порядке возрастания.

Когда использовать массивы?

На практике вы должны решить, использовать ли Связанный список или массив хранить последовательность значений данных. Используйте массивы, когда вам нужен быстрый доступ к элементам и спискам, когда вы динамически должны расти или уменьшить последовательность.

Укрепить свои навыки кодирования

Рекомендации

Работая в качестве исследователя в распределенных системах, доктор Кристиан Майер нашел свою любовь к учению студентов компьютерных наук.

Чтобы помочь студентам достичь более высоких уровней успеха Python, он основал сайт программирования образования Finxter.com Отказ Он автор популярной книги программирования Python One-listers (Nostarch 2020), Coauthor of Кофе-брейк Python Серия самооставленных книг, энтузиаста компьютерных наук, Фрилансера и владелец одного из лучших 10 крупнейших Питон блоги по всему миру.

Его страсти пишут, чтение и кодирование. Но его величайшая страсть состоит в том, чтобы служить стремлению кодер через Finxter и помогать им повысить свои навыки. Вы можете присоединиться к его бесплатной академии электронной почты здесь.