牛客堂常見面試題精講(一)1
順時針旋轉列印矩陣:
演算法程式碼:
package com.zhao.niuke;
public class Problem_02_RotateMatrix {
public static void rotate(int[][] matrix) {
int tR = 0;//矩陣左上角第一個元素的起始位置行標
int tC = 0; //列標
int dR = matrix.length - 1;//矩陣最後一個元素也就是右下角元素的行標
int dC = matrix[0].length - 1;//列標
while (tR < dR) {//符合旋轉的條件
rotateEdge(matrix, tR++, tC++, dR--, dC--);//進行座標移動邊際!
}
}
public static void rotateEdge(int[][] m, int tR, int tC, int dR, int dC) {
int times = dC - tC; // times就是總共的旋轉組數
int tmp = 0;
for (int i = 0; i != times; i++) { // 一次迴圈就是一組佔據調整一共迴圈三次,先最外圈旋轉開始。
tmp = m[tR][tC + i];
m[tR][tC + i] = m[dR - i][tC];
m[dR - i][tC] = m[dR][dC - i];
m[dR][dC - i] = m[tR + i][dC];
m[tR + i][dC] = tmp;
}
}
public static void printMatrix(int[][] matrix) {
//列印矩陣 i和j分別代表矩陣的行和列
for (int i = 0; i != matrix.length; i++) { //列印矩陣的行數
for (int j = 0; j != matrix[0].length; j++) { //列印矩陣的列數
System.out.print(matrix[i][j] + " ");
}
System.out.println("");
}
}
public static void main(String[] args) {
int[][] matrix = { { 1, 2, 3, 4 }, { 5, 6, 7, 8 }, { 9, 10, 11, 12 },
{ 13, 14, 15, 16 } };//初始矩陣的定義,用一個二維陣列定義!
printMatrix(matrix);//先列印初始矩陣
rotate(matrix);//旋轉列印矩陣
System.out.println("===========");
printMatrix(matrix);
}
}
/*
* 如何實現轉圈列印矩陣
*/
詳細解析:
相關文章
- MySQL常見面試題總結[精讀]MySql面試題
- 20個資料庫常見面試題講解資料庫面試題
- JDBC常見面試題集錦(一)JDBC面試題
- ajax常見面試題面試題
- 前端常見面試題前端面試題
- 常見 React 面試題React面試題
- Redis常見面試題Redis面試題
- Golang常見面試題Golang面試題
- Mysql 常見面試題MySql面試題
- Redis 常見面試題Redis面試題
- Dubbo常見面試題面試題
- JDBC常見面試題JDBC面試題
- mybatis常見面試題MyBatis面試題
- SQL常見面試題SQL面試題
- 常見Java面試題Java面試題
- Docker常見面試題Docker面試題
- vue 常見面試題Vue面試題
- 【Java面試】 Javascript常見面試題!JavaScript面試題
- 【Java面試】Servlet常見面試題!JavaServlet面試題
- 【面試】面試常見問題整理面試
- 漫畫 | Redis常見面試問題(一)Redis面試
- [面試題]大廠常見面試題整理面試題
- 求職面試常見問題:Python常見面試題全解析附答案求職Python面試題
- Spring常見面試題!Spring面試題
- Java常見的面試題Java面試題
- SSM框架常見面試題SSM框架面試題
- HashMap常見面試題整理HashMap面試題
- Hadoop常見面試題Hadoop面試題
- Vue常見面試題整理Vue面試題
- Vue常見的面試題Vue面試題
- 常見面試題 - URL 解析面試題
- Redis面試常見問題Redis面試
- 常見面試SQL問題面試SQL
- 整理kafka常見面試題Kafka面試題
- MQ / ES 常見面試題MQ面試題
- 常見的JVM 面試題JVM面試題
- 【硬核】Dubbo常見面試題面試題
- spring常見面試題Spring面試題