矩陣對角線輸出

2021-08-27 17:35:41 字數 1610 閱讀 2980

題1:二維陣列(n*n),沿對角線方向,從右上角列印到左下角如n=4: 

4*4陣列 寫道

要求列印出 寫道 4

3 8

2 7 12

1 6 11 16

5 10 15

9 14

13

03 

02 13

01 12 23

00 11 22 33

10 21 32

20 31

30

程式:

public class tst ,,,

};/**

* */

for(int sum=0; sum<=7; sum++)

}system.out.println();

} /*

00 01 10

02 11 20

03 12 21 30

13 22 31

23 32

33 */

system.out.println("************************************");

for(int tmp=-3; tmp<=3; tmp++)

}system.out.println();

} }}

輸出結果 寫道

00 01 10

02 11 20

03 12 21 30

13 22 31

23 32

33 ************************************

03 02 13

01 12 23

00 11 22 33

10 21 32

20 31

30實際上就是兩個對角線方式的輸出:關鍵**是

關鍵 寫道

if( i + j == sum)

and

if( i-j == tmp)

找到i和j的關係。總共迴圈的次數。

如: i+j

0 00

1 01 10

2 02 11 20

3 03 12 21 30

4 13 22 31

5 23 32

6 33

************************************

i-j

-3 03

-2 02 13

-1 01 12 23

0 00 11 22 33

1 10 21 32

2 20 31

3 30

2, 矩陣螺旋輸出。

""1.要旋轉.所以要分四個方向.

2:每一圈都比上一圈小一格.

既然有了規律..自然演算法也就出現了...

乙個二維陣列.

先是從行填寫,方向是從小到大.然後是列填寫,方向也是從小到大.

然後又是行填寫,方向是從大到小,

最後是列填寫,方向是從大到小.

下一圈,陣列的行列,頭部尾部都會比前面小1.然後再是迴圈....

""直至陣列的行列其中的乙個首尾相等...

python 矩陣按對角線列印

description 將乙個矩陣 二維陣列 按對角線向右進行列印。搜了一下發現好像是美團某次面試要求半小時手撕的題 example input 1,2,3,4 5,1,2,3 9,5,1,2 output 4 3,3 2,2,2 1,1,1 5,5 9 思路 考慮每條對角線開頭元素的index i...

螺旋矩陣,求對角線之和

線代知識 include intmain void scanf d n a x y 1 while n n c for x 0 x printf n 站在數學角度看 會有重複點,但 執行不會有重複點。因為對於 而言方陣中的元素只遍歷了一次,不會有重複點 include intsum int a 10...

對角線問題

這裡有 n n 矩陣,要求左上到右下的對角線上都為 x,其他地方為 y。x y 任意值,但不相等。x y y y y x y y y y x y.y y y x 我們可以把這裡的矩陣看做乙個二維陣列,長度為 n x,y 賦任意不等常數即可。方法一 現在,最簡單的法子是兩層迴圈遍歷陣列,在內層迴圈中做...