(面試題)如何之字形列印二維陣列

2022-04-22 05:18:53 字數 1248 閱讀 1146

什麼是之字形列印二維陣列:

比如給定乙個二維陣列

按照紅色線路列印,即稱作「之」字型列印

怎麼實現呢?想要直接尋找每個位置與位置之間的關係是很難的,所以我們需要從這個線路著手,怎麼能走出這樣的線路呢?

我們設定兩個指標a和b,各自的行走線路如下:

有什麼用呢?ab總能形成乙個對角線,

形成了對角線,然後設定乙個boolean型別的flag,控制列印的方向,如果flag為true,就從下往上列印,如果為false就從上往下列印

所以列印順序就是這樣:

.看一下**:

package mianshi;

public

class

printzhi

}private

static

void

printtmparrnum

(int

arr,

int ar,

int ac,

int br,

int bc,

boolean flag)

else}}

public

static

void

main

(string[

] args),,

};printzhi

(matrix);}

}

生成乙個圖,便於理解:

a,b最開始都是(0,0),(3,3)作為終止條件,如果a的行到了3,說明他執行完畢了,因為a先往右走,到了(0,3),還是第0行,然後才往下走,等行數到了3,才終止。

b是從下開始走,到了(3,0),然後右拐,直到(3,3)終止。

找到了a,b的座標以後列印就比較簡單了,只要通過boolean判斷即可!~

(面試題)如何之字形列印二維陣列

什麼是之字形列印二維陣列 比如給定乙個二維陣列 按照紅色線路列印,即稱作 之 字型列印 怎麼實現呢?想要直接尋找每個位置與位置之間的關係是很難的,所以我們需要從這個線路著手,怎麼能走出這樣的線路呢?我們設定兩個指標a和b,各自的行走線路如下 有什麼用呢?ab總能形成乙個對角線,形成了對角線,然後設定...

搜尋二維陣列(面試題3)

寫出乙個高效的演算法來搜尋 m n矩陣中的值。這個矩陣具有以下特性 1,4,7,11,15 2,5,8,12,19 3,6,9,16,22 10,13,14,17,24 18,21,23,26,30 查詢17,return true 查詢20,return false。思路 由例子可以看出所有數字的...

面試題21 二維陣列搜尋

題目 設計乙個演算法對 m n 矩陣進行搜尋,這個矩陣擁有如下屬性.1 每行的數都是從左到右排序好的.2 每行的首數大於上行的尾數.其實這題就是用二分查詢演算法,二分查詢一般是在一維陣列上進行搜尋,解決這道題的關鍵就是如何將二維陣列對映成一維陣列.對映關係為 k i n j,j 實現 package...