在C ++中从向量获取子向量

这是一个C ++程序,用于从C ++中的向量获取子向量

算法

Begin

  Declare s as vector s(vector const &v, int m, int n) to

   initialize start and end position of vector to constructor.

      auto first = v.begin() + m.  

      auto last = v.begin() + n + 1.

      Declare a variable vector of vector type.

         Pass the value of first and last position of vector.

      Return vector.

   Declare a template T.

   Declare a function show().

      Pass constructor of vector v as parameter.

      for (auto i: v)

         print the value of variable i.

   Declare a vector v.

      Initiation values in v vector.

      Initialize two variables a = 3, b = 6.

      Print “子向量是:” .

      Declare another vector sub_vector.

         vector sub_vector = s(v, a, b) to initialize values to the

         sub vector by mentioning the start and end position of

         vector v.

   call show() function to display the values of sub_vector.

End.

范例程式码

#include <iostream>

#include <vector>

using namespace std;

template<typename T>

vector<T> s(vector<T> const &v, int m, int n) {

   auto first = v.begin() + m;

   auto last = v.begin() + n + 1;

   vector<T> vector(first, last);

   return vector;

}

template<typename T>

void show(vector<T> const &v) {

   for (auto i: v) {

      cout << i << ' ';

   }

   cout << '\n';

}

int main() {

   vector<int> v = {7,6,2,4,1 ,9,10,15,17};

   int a = 3, b = 6;

   cout<<"子向量是:"<<endl;

   vector<int> sub_vector = s(v, a, b);

   show(sub_vector);

   return 0;

}

输出结果

子向量是:

4 1 9 10

以上是 在C ++中从向量获取子向量 的全部内容, 来源链接: utcz.com/z/321650.html

回到顶部