第四章:多維陣列和矩陣 ------------- 4.3 基礎題:Z形列印二位陣列
Z形列印二位陣列:
思路:
列印斜線。
注意更換方向的條件。
程式碼:
#include<iostream>
#include<vector>
using namespace std;
void print(vector<vector<int> > matrix)
{
//r:行號, m:行數
int r=0,m=matrix.size();
//c:列號,n:列數
int c=0,n=matrix.front().size();
//l2r:從左到右,
bool l2r=true;
while(r<m&&c<n)
{
//從左下到右上的斜線
if(l2r)
{
cout<<matrix[r][c]<<" ";
//現在在第一行,列未到邊界,這時只能向右走
if(r==0&&c<(n-1))
{
l2r=!l2r;//方向切換
c++;
continue;
}
else if(r>=0&&c==n-1)
{ //現在是在最後一列,只能向下走
l2r=!l2r;
r++;
continue;
}
else
{ //繼續走上坡
r--;
c++;
}
}
else
{ //反,走下坡
cout<<matrix[r][c]<<" ";
if(c==0&&r<(m-1))
{ //走到第一列,只能往下走
l2r=!l2r;
r++;
continue;
}
else if(r==m-1)
{ //到最後一行,只能往右走
l2r=!l2r;
c++;
continue;
}
else
{
r++;
c--;
}
}
}
}
int main()
{
vector<vector<int> > arr;
int row=3,col=4;
//二維向量賦初值
for(int i=0,k=1;i<row;i++)
{
vector<int> temp;
for(int j=0;j<col;j++)
{
temp.push_back(k);
k++;
}
arr.push_back(temp);
}
//列印二維向量
for(int i=0;i<row;i++)
{
for(int j=0;j<col;j++)
{
cout<<arr[i][j]<<" ";
}
cout<<endl;
}
cout<<endl;
print(arr);
return 0;
}
結果:
相關文章
- 第四章:多維陣列和矩陣 --------------- 4.1 基礎題:順時針列印二維陣列陣列矩陣
- 第四章:多維陣列和矩陣 ------------- 4.7 子陣列最大累加和陣列矩陣
- 第四章:多維陣列和矩陣 ------------- 4.8 子矩陣的最大累加和陣列矩陣
- 第四章:多維陣列和矩陣 ----------- 4.2 基礎題:將0所在的行列清零陣列矩陣
- 矩陣和陣列矩陣陣列
- 資料結構之陣列和矩陣--矩陣&不規則二維陣列資料結構陣列矩陣
- 第四章:多維陣列和矩陣 ------------- 4.4 找出邊界為1的最大子方陣陣列矩陣
- 二位陣列陣列
- PHP中二維陣列與多維陣列PHP陣列
- JavaSE 陣列:一維陣列&二維陣列Java陣列
- 多維陣列陣列
- Java陣列宣告建立和使用以及多維陣列、Arrays類、稀疏陣列Java陣列
- JAVA基礎--二維陣列Java陣列
- 二位陣列排序陣列排序
- 指標陣列和陣列指標與二維陣列指標陣列
- 多維陣列轉一維陣列(降維的多種方式)陣列
- 6-Java基礎語法-陣列之一維陣列Java陣列
- Java break、continue 詳解與陣列深入解析:單維陣列和多維陣列詳細教程Java陣列
- 多維陣列排序陣列排序
- C/C++ 二維陣列的理解(多維陣列)C++陣列
- 二維陣列和稀疏陣列互轉陣列
- 一維多維陣列陣列
- 《Java從入門到失業》第三章:基礎語法及基本程式結構(3.9):陣列(陣列基本使用、陣列的迴圈、陣列拷貝、陣列排序、多維陣列)Java陣列排序
- js 一維陣列轉二維陣列JS陣列
- js 二維陣列轉一維陣列JS陣列
- PHP 多維陣列排序PHP陣列排序
- 陣列基礎使用陣列
- JavaScript 學習筆記 - 多維陣列變為一維陣列JavaScript筆記陣列
- 演算法-陣列與矩陣演算法陣列矩陣
- 求二維陣列中最大子陣列的和陣列
- C++ 獲取陣列大小、多維陣列操作詳解C++陣列
- jquery裡遍歷普通陣列和多維陣列的方法及例項jQuery陣列
- 簡單介紹Lua一維陣列與多維陣列的使用陣列
- leetcode:面試題 01.08. 零矩陣(陣列,中等)LeetCode面試題矩陣陣列
- Java 學習筆記 二維陣列和物件陣列Java筆記陣列物件
- python輸入詳解(陣列、矩陣)Python陣列矩陣
- scala語法 -多維陣列陣列
- 多維陣列扁平化陣列