1. 程式人生 > >C++巢狀vector(二維矩陣)的初始化

C++巢狀vector(二維矩陣)的初始化

初始化一個巢狀的char型巢狀vector,已知C++11允許vector用花括號{}的初始方式,vector元素以逗號隔開,例如:

vector<char>> board = {'X', 'X', 'X'};

推廣之,易知巢狀vector就是內層vector作為外層vector的元素,初始化用兩層花括號,第一層花括號之間用逗號隔開:

vector<vector<char>> board = {{'X','.','.','X'},{'.','.','.','X'},{'.','.','.','X'}};

輸出board:

int m = board.size
(); int n = board[0].size(); for (int i = 0; i < m; i++) { for (int j = 0; j < n; j++) { cout<< board[i][j]<<" "; } cout<<endl; }

結果:

X . . X 
. . . X 
. . . X 

相關推薦

C++vector(矩陣)的初始

初始化一個巢狀的char型巢狀vector,已知C++11允許vector用花括號{}的初始方式,vector元素以逗號隔開,例如: vector<char>> board = {'X', 'X', 'X'}; 推廣之,易知巢狀vector

vector陣列初始

int main() { vector<vector<int> >num = { {1,1,1,0,1,1},{1,0,1,1,1,1},{1,1,1,0,0,1},{1,0,1,0,0,1},{1,1,1,1,1,1} }; //二維陣列

vector實現陣列,解決矩陣相乘問題

給定兩個矩陣A和B,要求你計算它們的乘積矩陣AB。需要注意的是,只有規模匹配的矩陣才可以相乘。即若A有Ra行、Ca列,B有Rb行、Cb列,則只有Ca與Rb相等時,兩個矩陣才能相乘。輸入格式:輸入先後給出兩個矩陣A和B。對於每個矩陣,首先在一行中給出其行數R和列數C,隨後R行,每行給出C個整數,以1個空格分隔,

兩個for迴圈陣列

將指令碼erweishuzu掛在Main Camera上 using UnityEngine; using System.Collections; using UnityEngine.UI; pu

C++:陣列初始

二維陣列初始化分為多種形式。注意,當只對部分元素賦初值時,對於int型陣列,未賦初值的元素自動取0值。 1)按行賦值 int a[ ][3]={{1,2,3},{4,5,6}}; ——相當於{{1,2,3},{4,5,6}} int a[ ][3]={{1,2},{0

Typescript | 關於陣列初始的誤區

假如要初始化一個4x4的二維陣列,裡面16個元素都為0 錯誤示範: let arr = new Array<Array<any>>() let cols = [0, 0, 0, 0] for (let raw = 0; raw < 4; raw++){ ar

Java中一陣列和陣列初始

陣列屬於引用資料型別,在使用前必須初始化,否則會報NullPointerException(空指標異常:執行時異常) 一維陣列初始化: 動態初始化:(宣告並開闢陣列) 資料型別[ ] 陣列名稱=new 資料型別[長度] int[ ] data=new

陣列初始及首地址

#include<stdio.h> #include<stdlib.h> void main4() { int num[3][4]; //二維陣列相當於 元素為一維陣列的一維陣列 int number = 1; for (int i = 0

memset函式為陣列初始

1int* a;  a = new int[10]; sizeof(a) 只會返回出來指標的大小,所以我們只能自己計算這個陣列的長度,這裡應當是sizeof(int) * 10, 因為數組裡面有10個int所以應該,memset(a, 0, sizeof(int)*10);/

java陣列初始

初始化方法: 1、使用大括號直接賦值,適合已經確定知道陣列元素的情況 2、給定二維陣列的大小 程式碼舉例如下: public class ArrCreat { public static

指標初始

這兩天在解析svmlib中遇到這行程式碼 prob.x = new svm_node * [prob.l]; 乍一看不知道什麼意思,後來通過看到一篇博文: http://blog.sina.com.cn/s/blog_4e1fbf0d0100ic43.

【MATLAB】矩陣視覺 MATLAB繪圖

基本繪圖函式 1、plot(y) 如果y是向量,則採用向量的索引值作為橫座標值,以向量元素的值作為縱座標值。 如果y是實數矩陣,則相當於對y的每一列進行二維繪圖。 如果y是複數組成的向量,則相當於plot(real(y),imag(y))。 2、plot(x,y)

C++ vector數組

ack i++ push int 10個 push_back 動態 數組 指針數組 C++ 構建二維動態數組 int **p; p = new int*[10]; //註意,int*[10]表示一個有10個元素的指針數組 for (int i = 0; i <

251. Flatten 2D Vector 平鋪矩陣

pre pub order lse bool array 條件 space closed [抄題]: Implement an iterator to flatten a 2d vector. Example: Input: 2d vector = [ [1,2],

【LeetCode】240. 搜尋矩陣 II 結題報告 (C++)

原題地址:https://leetcode-cn.com/problems/search-a-2d-matrix-ii/submissions/ 題目描述: 編寫一個高效的演算法來搜尋 m x n 矩陣 matrix 中的一個目標值 target。該矩陣具有以下特性: 每行的元素從左到右

c++vector陣列的使用 記錄

#include <iostream> #include <vector> #include <algorithm> using namespace std; bool compare(const vector<int>&

C++ vector陣列

C++ 構建二維動態陣列 int **p; p = new int*[10]; //注意,int*[10]表示一個有10個元素的指標陣列 for (int i = 0; i < 10; ++i) { p[i] = new int[5]; } 這樣就

Leetcode 74. 搜尋矩陣 C++ 二分查詢

 本題一看就知道要用二分法,而且是排序好的。只不過需要用兩次而已。 二分法的思想本身不難,但是我自己在使用的時候,常常因為邊界條件而出錯,在網上找到兩篇很不錯的帖子,專門講二分法的邊界問題。 文章地址:(其中一篇是轉載,其實是一篇) bool searchMa

使用vector 和map構造矩陣表格

            使用vector 和map構造二維矩陣和二維表格 眾說周知,我們可以適應vector容器來構造二維陣列.當然這樣雖然會帶來安全性的優勢但是會帶來效率上的低下.效率差異的主要原因便在於編譯器對二維陣列的優化.當然,在平日的編寫過程中由於安全性的原因,我

c陣列初始化為0的2種實現方式

 1 #include <stdio.h>   2 #include <stdlib.h>   3 #include <string.h>   4 int main()   5 {   6     //char a[2][4] ;   7