include iostream include vector using namespace std int

  • Slides: 30
Download presentation

#include <iostream> #include <vector> using namespace std; int main() { vector<int> array 1(3); //

#include <iostream> #include <vector> using namespace std; int main() { vector<int> array 1(3); // инициализируем элементы вектора array 1[0] = 4; array 1[1] = 2; array 1[2] = 1; vector<int> array 2(3); // инициализируем элементы вектора array 2[0] = 4; array 2[1] = 2; array 2[2] = 1; // сравниваем массивы if (array 1 == array 2) { cout << "array 1 == array 2" << endl; } return 0; } Вывод: array 1 == array 2

#include <iostream> #include <vector> #include <iterator> using namespace std; int main() { int array.

#include <iostream> #include <vector> #include <iterator> using namespace std; int main() { int array. Size = 0; cout << "Введите размер массива: "; cin >> array. Size; vector<int> array(array. Size); cout << "Введите элементы массива: "; for(int i = 0; i < array. size(); i++) { cin >> array[i]; }

#include <iostream> #include <vector> using namespace std; int main() { vector<string>vec. Str 1{{'a', 'b',

#include <iostream> #include <vector> using namespace std; int main() { vector<string>vec. Str 1{{'a', 'b', 'c', 'd'}, // объявлен вектор № 1 {'e', 'f', 'g', 'h'}, {'i', 'j', 'k', 'l'}}; cout<<"vec. Str 1 contains: n"; for(int y=0; y<vec. Str 1. size(); ++y) { for(int x=0; x<vec. Str 1[y]. length(); ++x) { cout<<vec. Str 1[y][x]<<ends; } cout<<endl; }

vector<string>vec. Str 2; // объявлен вектор № 2 vec. Str 2. push_back("abcd"); vec. Str

vector<string>vec. Str 2; // объявлен вектор № 2 vec. Str 2. push_back("abcd"); vec. Str 2. push_back("efgh"); vec. Str 2. push_back("ijkl"); cout<<endl; cout<<"vec. Str 2 contains: n"; for(int y=0; y<vec. Str 2. size(); ++y) { for(int x=0; x<vec. Str 2[y]. length(); ++x) { cout<<vec. Str 2[y][x]<<ends; } cout<<endl; } return 0; } Вывод: vec. Str 1 contains: a b c d e f g h i j k l vec. Str 2 contains a b c d e f g h i j k l

#include <iostream> #include <vector> #include <iterator> using namespace std; int main() { vector<int>: :

#include <iostream> #include <vector> #include <iterator> using namespace std; int main() { vector<int>: : iterator it; // создаем итератор it vector<int>vec. Int(10); // выделили место под 10 элементов cout<<"Vector contains: "; for(int i=0; i<10; ++i) vec. Int[i]=i; for(it=vec. Int. begin(); it<vec. Int. end(); ++it) { cout<<*it<<ends; ///вывод на экран вектора } cout<<endl; cout<<"n. Vector capacity: "<<vec. Int. capacity(); cout<<endl;

// реверс вектора cout<<"Vector revers: "; for(auto rit=vec. Int. rbegin(); rit<vec. Int. rend(); ++rit)

// реверс вектора cout<<"Vector revers: "; for(auto rit=vec. Int. rbegin(); rit<vec. Int. rend(); ++rit) { cout<<*rit<<ends; } cout<<endl; vec. Int. clear(); // очистили вектор cout<<"n. Vector size: "<<vec. Int. size(); //размер вектора cout<<endl; return 0; } Вывод: Vector contains: 0 1 2 3 4 5 6 7 8 9 Vector capacity: 10 Vector revers: 9 8 7 6 5 4 3 2 1 0 Vector size: 0

#include <iostream> #include <vector> using namespace std; int main() { vector<int>vec. Int; vector<int>: :

#include <iostream> #include <vector> using namespace std; int main() { vector<int>vec. Int; vector<int>: : iterator it; for(int i=0; i<5; ++i) // заполнение вектора значениями 0 -4 { vec. Int. push_back(i); } // итератор указывает на нулевой элемент вектора it=vec. Int. begin();

#include <iostream> #include <vector> using namespace std; int main() { vector<int>vec. Int. First, vec.

#include <iostream> #include <vector> using namespace std; int main() { vector<int>vec. Int. First, vec. Int. Second; for(int i=0; i<10; ++i) // заполняем вектор vec. Int. Second значениями 0 -9 { vec. Int. Second. push_back(i); } cout<<"vec. Int. Second contains: "; for(int i=0; i<vec. Int. Second. size(); ++i)///выводим заполненный вектор vec. Int. Second { cout<<vec. Int. Second[i]<<ends; }

vec. Int. First. empty() ? cout << "nvec. Int. First is emptyn": cout <<

vec. Int. First. empty() ? cout << "nvec. Int. First is emptyn": cout << "vec. Int. First is not emptyn"; vec. Int. Second. empty() ? cout << "vec. Int. Second is emptyn“ : cout << "vec. Int. Second is not emptyn"; // нумерация векторов идет от нулевого элемента vec. Int. Second. erase(vec. Int. Second. begin()+1); //стираем 1 элемент вектора vec. Int. Second. erase(vec. Int. Second. begin()+2, vec. Int. Second. begin()+ 6); //стираем 3 -6 элементы вектора, 7 элемент не стирается cout<<"vec. Int. Second contains: "; for(int i=0; i<vec. Int. Second. size(); ++i) { cout<<vec. Int. Second[i]<<ends; } cout<<endl;

cout << "first element in vector: " << vec. Int. Second. front() << endl;

cout << "first element in vector: " << vec. Int. Second. front() << endl; // выводим самый первый элемент в векторе cout << "last element in vector: " << vec. Int. Second. back() << endl; // выводим самый последний элемент в векторе cout << "first-last: " << vec. Int. Second. front()vec. Int. Second. back() << endl; // вычитаем из первого элемент вектора последний элемент вектора return 0; } Вывод: vec. Int. Second contains: 0 1 2 3 4 5 6 7 8 9 vec. Int. First is empty vec. Int. Second is not empty vec. Int. Second contains: 0 2 7 8 9 first element in vector: 0 last element in vector: 9 first-last: -9

cout << "Vector contains: "; for (int i=0; i<vec. Int. size(); ++i) { cout

cout << "Vector contains: "; for (int i=0; i<vec. Int. size(); ++i) { cout << vec. Int[i] << ends; } cout << "n. Vector max_size: " << vec. Int. max_size(); cout << "n. Vector size: " << vec. Int. size(); // Выводим размер вектора vec. Int. resize(10); // Увеличиваем размер до 10 элементов cout << "n. New vector size: " << vec. Int. size() << endl; // Выводим размер вектора return 0; } Вывод: Vector contains: 200 100 300 900 100 Vector max_size: 1073741823 Vector size: 6 New vector size: 10

#include <iostream> #include <vector> using namespace std; int main() { vector <int> vec. First

#include <iostream> #include <vector> using namespace std; int main() { vector <int> vec. First , vec. Second; // Создаем два вектора for ( int i=0; i<10; ++i) { vec. First. push_back(i); // заполняем первый вектор vec. Second. push_back(i*10); // заполняем второй вектор } cout << "vec. First contains: "; for (int i=0; i<vec. First. size(); ++i) cout << vec. First[i] << ends; cout << "nvec. Second contains: "; for (int i=0; i<vec. Second. size(); ++i) cout << vec. Second[i] << ends;

swap (vec. First. back(), vec. Second. back()); // поменяли местами последний элемент в обоих

swap (vec. First. back(), vec. Second. back()); // поменяли местами последний элемент в обоих векторах cout << "nvec. First contains: "; for (int i=0; i<vec. First. size(); ++i) cout << vec. First[i] << ends; cout << "nvec. Second contains: "; for (int i=0; i<vec. Second. size(); ++i) cout << vec. Second[i] << ends; // вместимость вектора до увеличения его размера cout << "nvec. First capacity before reserve: " << vec. First. capacity(); vec. First. reserve(20); // вместимость вектора после увеличения его размера cout << "nvec. First capacity after reserve: " << vec. First. capacity(); return 0; }

Вывод vec. First contains: 0 1 2 3 4 5 6 7 8 9

Вывод vec. First contains: 0 1 2 3 4 5 6 7 8 9 vec. Second contains: 0 10 20 30 40 50 60 70 80 90 vec. First contains: 0 10 20 30 40 50 60 70 80 90 vec. Second contains: 0 1 2 3 4 5 6 7 8 9 vec. First contains: 0 10 20 30 40 50 60 70 80 9 vec. Second contains: 0 1 2 3 4 5 6 7 8 90 vec. First capacity before reserve: 16 vec. First capacity after reserve: 20

#include <iostream> #include <vector> using namespace std; int main() { vector <int> vec. First

#include <iostream> #include <vector> using namespace std; int main() { vector <int> vec. First (10); // кол-во элементов, которое может содержать наш вектор cout << "Capacity of vec. First before clear: " << vec. First. capacity(); vec. First. clear(); // кол-во элементов, которое может содержать наш вектор после удаления всех элементов cout << "n. Capacity of vec. First after clear: " << vec. First. capacity(); vec. First. shrink_to_fit(); // очищение памяти cout << "n. Capacity of vec. First after shrink_to_fit: " << vec. First. capacity(); return 0; }

Вывод Capacity of vec. First before clear: 10 Capacity of vec. First after shrink_to_fit:

Вывод Capacity of vec. First before clear: 10 Capacity of vec. First after shrink_to_fit: 0

Литература • Marienko L. Векторы в C++ http: //cppstudio. com/post/8453/

Литература • Marienko L. Векторы в C++ http: //cppstudio. com/post/8453/