Карта векторов в C ++ STL с примерами
Карта в STL Карты - это ассоциативные контейнеры, в которых элементы хранятся сопоставленным образом. Каждый элемент имеет значение ключа и сопоставленное значение. Никакие два сопоставленных значения не могут иметь одинаковые ключевые значения.
Вектор в STL. Вектор - это то же самое, что и динамические массивы, с возможностью автоматического изменения размера при вставке или удалении элемента, а их хранение автоматически обрабатывается контейнером. Элементы вектора помещаются в непрерывное хранилище, чтобы к ним можно было получить доступ и пройти с помощью итераторов.
Карта векторов в STL: карта векторов может быть очень эффективной при проектировании сложных структур данных.
Синтаксис:
карта <ключ, вектор <тип данных>> map_of_vector; ИЛИ карта <вектор <тип данных>, ключ> map_of_vector;
Например : рассмотрим простую задачу, в которой мы должны проверить, посещен ли вектор или нет.
// C++ program to demonstrate // use of map for vectors #include <bits/stdc++.h> using namespace std; map<vector< int >, int > vis; // Print True if vector is visited // or False if not visited void CheckVisited(vector< int > data) { if (vis.find(data) != vis.end()) { cout << "True" << endl; } else { cout << "False" << endl; } } // Driver code int main() { // Initializing some vectors vector< int > data_1{ 10, 20, 30, 40 }; vector< int > data_2{ 5, 10, 15 }; vector< int > data_3{ 1, 3, 5, 7, 9, 11, 13 }; // Making some vectors as visited vis[data_1] = 1; vis[data_2] = 1; vis[data_3] = 1; // checking if these vectors are // visited or not vector< int > check_1 = { 5, 10, 15 }; vector< int > check_2 = { 2, 4, 6, 8, 10, 12 }; CheckVisited(check_1); CheckVisited(check_2); return 0; } |
Правда Ложь