В настоящее время очень легко научиться программировать, но почти каждый онлайн-класс пропускает основы программирования, которые представляют собой структуру данных и алгоритмы того, как компьютер вычисляет или понимает ваш код. Тем не менее, я надеюсь, что эта статья будет полезной :)
Что такое структура данных?
- Определение — организация данных, управление и формат хранения обеспечивают эффективный доступ и изменение. Другими словами, структура данных — это способ хранения данных на компьютере.
Структура данных массива — набор элементов одного типа, размещенных в смежных областях памяти, на которые можно ссылаться по отдельности, используя индекс для уникального идентификатора.
int numbers[4] = { 10, 20, 30, 40 };
Начните с абстрактного типа данных:
абстрактные типы данных — это объекты, которые являются определениями данных и операций, но не имеют деталей реализации. Мы разделили перспективу этого массива целых чисел на 2 точки зрения: абстрактное представление и представление реализации.
С точки зрения абстрактного представления:
— хранить набор элементов типа int
— читать элементы по позиции. например, index
- изменить элементы по индексу
- выполнить сортировку
С точки зрения реализации:
int numbers[4] = {10, 20, 30, 40}; cout << arr[1]; //access index arr[2] = 10; // modify index // sorting operation is one of Algorithms technique
Что такое алгоритм
- Определение — конечный набор инструкций, которые несут в себе порядок выполнения конкретной задачи. Алгоритм имеет следующие характеристики
- Входы
- Выходы
- Однозначность — четкие и простые инструкции.
- Конечность — ограниченное количество инструкций.
- Эффективность — воздействие на процесс.
для примера алгоритма
- объявить переменные
- прочитать значения переменных
- добавить числа a и b, затем присвоить результат переменной sum
- отобразить результат, который это "сумма"
var a, b, sum; a = 5; b = 10; sum = a + b; cout << sum << endl; 15
Кроме того, большинство алгоритмов основаны на математике. Если вы хорошо разбираетесь в математике, вы оптимизируете некоторые алгоритмы и найдёте алгоритмы с наилучшей производительностью из этих базовых вещей.