1. 程式人生 > >C++ vector& nums 用法一

C++ vector& nums 用法一

一維vector

建立一維vector:

vector<int> nums;//不指定長度
vector<int> nums(n); // 指定長度為n 
  • 1
  • 2

新增元素

nums.push_back(1);//直接從陣列末端新增
nums[i] = 1;//直接賦值給第i個位置
  • 1
  • 2

刪除元素

nums.resize(nums.size-i); //直接將陣列長度減小,某種方式上刪掉了後面i個
nums.pop_back();//刪掉最後一個元素
  • 1
  • 2

陣列遍歷

for(int i = 0; i < nums.size(); i++){
    cout<<nums[i]<<endl;
}
  • 1
  • 2
  • 3

其他 
獲得長度:nums.size() 
排序(O(nlogn)):sort(nums.begin(),nums.end()); 
翻轉:reverse(nums.begin(), nums.end()); 
合併兩個vector:合併nums1和nums2,並將合併後的陣列賦值給nums

vector<int> nums1(m),nums2(n);
vector<int> nums;
nums.resize(m+n);
merge(nums1.begin(), nums1.end(),nums2.begin(),nums2.end(),nums);
  • 1
  • 2
  • 3
  • 4

二維vector

建立m*n的二維vector: 直接定義

vector<vector <int> > nums(m ,vector<int>(n));    //m*n的二維vector
  • 1
小二我上一盤解釋:
定義了一個vector容器,元素型別為vector<int>,初始化為包含m個vector<int>物件,每個物件都是一個新創立的vector<int>物件的拷貝,而這個新創立的vector<int>物件被初始化為包含n個0。
  • 1
  • 2
vector<int>(n)表示構造一個無名且含n個0的vector<int>物件。
  • 1
  • 2
  • 1
  • 2

動態建立m*n的二維vector 
方法一:

vector<vector <int> > nums;
nums.resize(m);
for(int i=0;i<m;i++) nums[i].resize(n);
  • 1
  • 2
  • 3

方法二:

vector<vector <int> > nums;
  • 1
  • 2

nums.resize(m,vector<int>(n));

初始化二維陣列

vector<vector <int> > nums(m ,vector<int>(n,0));    //m*n的二維vector,所有元素為0
  • 1

獲得二維陣列的行數:nums.size()
獲得二維陣列的列數:nums[0].size()

陣列遍歷

int m = nums.size(),n = nums[0].size();
for(int i = 0; i < m; i++){
    for(int j = 0; j < n; j++){
        cout<<nums[i][j]<<endl;
    }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

咦 用vector定義二維陣列還闊以醬紫 ——vector<node> v[maxn]; //備註:node 是結構體; maxn 是v數組裡元素的個數

相關推薦

C++ vector& nums 用法

一維vector建立一維vector:vector<int> nums;//不指定長度 vector<int> nums(n); // 指定長度為n 12新增元素nums.push_back(1);//直接從陣列末端新增 nums[i] = 1;//直

C++ vector push_back() 用法

#include<iostream> #include<vector> using namespace std; int main() { vector<int> a; cout<<a.size()<<endl; for(in

C++ vector用法(整理)

vector 是向量型別,它可以容納許多型別的資料,如若干個整數,所以稱其為容器。vector 是C++ STL的一個重要成員,使用它時需要包含標頭檔案: #include<vector>; 一、vector 的初始化:可以有五種方式,舉例說明如下: (1) vector&

C++ vector常見用法總結

此文為個人學習備份,點選這裡訪問原文。 vector是一個動態的序列容器,相當於一個size可變的陣列。     相比於陣列,vector會消耗更多的記憶體以有效的動態增長。而相比於其他動態序列容器(deques, lists and forward_lists

C++ vector用法及algorithm.h中常用函式

c++ vector用法 C++內建的陣列支援容器的機制,但是它不支援容器抽象的語義。要解決此問題我們自己實現這樣的類。在標準C++中,用容器向量(vector)實現。容器向量也是一個類模板。 標準庫vector型別使用需要的標頭檔案:#include <vector>。vector 是一個

c++ vector常見用法

#include<iostream> #include<vector> using namespace std; int main() { //申明6個有效元素,類似a[6]。 vector<int> vec(6); //初始化,用6去初始化

C++vector容器用法詳解

C++  vector 是一個十分有用的容器,包含在標頭檔案<vector>中 vector標準庫提供了許多重要的操作 v.empty()  如果v為空,返回true,否則,返回FALSE v.size()    返回v中元素的個數 v.push_back(t)

C++ vector用法總結

vector是可變長度的陣列,需要標頭檔案#include<vector> 1. 初始化 // 建構函式 vector<int> abc(10); //10個0 vector<int> def(10,1); //10個1 // 陣列地

c++ vector, set, map的用法總結

一、vector 向量容器 (1)標頭檔案 #include<vector> (2)建立vector物件, vector<int> vec;

c++中STL 關於map,set,vector用法

  一、vector vector相當於是一個可以存放一個任意資料型別的一個容器,通過迭代器可以對其進行相應的操作,如下:   1 vector<CString> arrTest; 2 arrTest.push_back(L"你"); 3 arr

c++ vector各種函式介紹及其用法

建構函式 語法: C++ Vectors可以使用以下任意一種引數方式構造: vector();    //無引數 - 構造一個空的vector vector( size_type num, const TYPE &val );   //數量(num)和值(

一個程式包含C++ STL中vector常見用法

廢話少說,直接上程式碼:  #include <iostream> #include <vector> using namespace std; int main() { //vector的四種構造方式 //構造一個空vector vect

C++ vector容器基本用法

vector initialize: vector<int> v1; //empty vector<int> v2(v1) ;  vector<int> v2(v1.begin(), v1.end()); vector<int

C++ vector用法詳解

vector 是向量型別,它可以容納許多型別的資料,如若干個整數,所以稱其為容器。vector 是C++ STL的一個重要成員,使用它時需要包含標頭檔案: #include<vector>; 一、vector 的初始化:可以有五種方式,舉例說明如下:

C++ vector和iterator簡單用法

vector是動態可變陣列,可以新增int、double、自定義的類 1.int示例: #incldue<vector> vector<int> a; a.push_back(1); a.push_back(2); a.push_ba

C++ vector用法(詳解!!函式,實現)

1,簡述一下vector的基本操作,它的size,capacity(),clear,reverse,reserve,   push_back等!!! 2,說說,vector的儲存特性,是順序儲存還是如同連結串列般,如果是順序儲存的話,那麼是如何執行   erase,inse

C++模版STL中 map 和 string, vector用法詳解

參考: 1. map 用法詳解 std map是STL的一個關聯容器,它提供一對一(其中第一個可以稱為關鍵字,每個關鍵字只能在map中出現一次,第二個可能稱為該關鍵字的值)的資料處理能力,由於這個特性,它完成有可能在我們處理一對一資料的時候,在程式設計上提

c++ vector 用法總結

vector 是向量型別,它可以容納許多型別的資料,如若干個整數,所以稱其為容器。vector 是C++ STL的一個重要成員,使用它時需要包含標頭檔案:#include<vector>; 一、vector 的初始化:可以有五種方式,舉例說明如下: (1) v

C++中vector用法及注意事項

#include<vector>; 一、vector 的初始化:可以有五種方式,舉例說明如下: (1)vector<int> a(10); //定義了10個整型元素的向量(尖括號中為元素型別名,它可以是任何合法的資料型別),但沒有給出初值,其值是不確

C++ ——vector作為函式返回值用法

在實際應用過程中,我們經常需要儲存一系列的資料,有可能是一個值,點等,這時我們會用到vector。 如下所示: vector<int> vector<float> 與opencv結合使用時可能還會有: vector<Poin