を構築または初期化するさまざまな方法を次に示します。 C++ STL のベクトル
1. 値を 1 つずつプッシュして初期化します。
C++
// C++ program to create an empty> // vector and push values one> // by one.> #include> #include> using> namespace> std;> > int> main()> {> > // Create an empty vector> > vector<> int> >運ぶ>> > > vect.push_back(10);> > vect.push_back(20);> > vect.push_back(30);> > > for> (> int> x : vect)> > cout << x <<> ' '> ;> > > return> 0;> }> |
>
>出力
10 20 30>
2. サイズを指定し、すべての値を初期化します。
C++
日付文字列Java
// C++ program to create an empty> // vector and push values one> // by one.> #include> #include> using> namespace> std;> > int> main()> {> > int> n = 3;> > > // Create a vector of size n with> > // all values as 10.> > vector<> int> >vect(n, 10);>> > > for> (> int> x : vect)> > cout << x <<> ' '> ;> > > return> 0;> }> |
>
>出力
10 10 10>
3. 配列と同様に初期化します。
C++
// C++ program to initialize> // a vector like an array.> #include> #include> using> namespace> std;> > int> main()> {> > vector<> int> >バー { 10, 20, 30 };>> > > for> (> int> x : vect)> > cout << x <<> ' '> ;> > > return> 0;> }> |
>
>出力
10 20 30>
4. 配列からの初期化:
C++
モニターのサイズを決める方法
// C++ program to initialize> // a vector from an array.> #include> #include> using> namespace> std;> > int> main()> {> > int> arr[] = { 10, 20, 30 };> > int> n => sizeof> (arr) /> sizeof> (arr[0]);> > > vector<> int> >vect(arr, arr + n);>> > > for> (> int> x : vect)> > cout << x <<> ' '> ;> > > return> 0;> }> |
>
>出力
10 20 30>
5. 別のベクトルからの初期化:
C++
// C++ program to initialize a vector from> // another vector.> #include> #include> using> namespace> std;> > int> main()> {> > vector<> int> >vect1{ 10, 20, 30 };>> > > vector<> int> >vect2(vect1.begin(), vect1.end());>> > > for> (> int> x : vect2)> > cout << x <<> ' '> ;> > > return> 0;> }> |
文字から文字列へのJava
>
>出力
10 20 30>
6. すべての要素を特定の値で初期化します。
C++
// C++ Program to initialize vector using fill()> #include> #include> using> namespace> std;> > int> main()> {> > // creating array with size 10> > vector<> int> >vect1(10);>> > > // initializing using fill() function> > int> value = 5;> > fill(vect1.begin(), vect1.end(), value);> > > // printing vector> > for> (> int> x : vect1)> > cout << x <<> ' '> ;> > > return> 0;> }> |
>
>出力
5 5 5 5 5 5 5 5 5 5>
7 。 std::iota を使用して配列を連続番号で初期化する :
アルゴリズム二分探索
C++
// C++ program to initialize a> // vector with consecutive> // numbers> #include> #include> #include> using> namespace> std;> > int> main()> {> > // declaring a vector with size 5> > vector<> int> >もの(5);>> > > // initializing using iota()> > iota(vec.begin(), vec.end(), 1);> > > // printing the vector> > for> (> int> i = 0; i <5; i++) {> > cout << vec[i] <<> ' '> ;> > }> > return> 0;> }> |
>
>出力
1 2 3 4 5>
時間計算量: O(N)。N はベクトルのサイズです。
補助スペース: の上)。