二維網格的遷移(java實現)
給你一個 m 行 n 列的二維網格 grid 和一個整數 k。你需要將 grid 遷移 k 次。
每次「遷移」操作將會引發下述活動:
位於 grid[i][j] 的元素將會移動到 grid[i][j + 1]。
位於 grid[i][n - 1] 的元素將會移動到 grid[i + 1][0]。
位於 grid[m - 1][n - 1] 的元素將會移動到 grid[0][0]。
請你返回 k 次遷移操作後最終得到的 二維網格。
public List<List> shiftGrid(int[][] grid, int k) {
for (int i = 0; i < k; i++) {//移動k次;
for (int i1 = 0; i1 < grid.length; i1++) { //i1代表grid的每個元素
int temp = grid[i1][grid[0].length-1];//這是每個元素裡面的最後一個元素
for (int i2 = grid[0].length - 1; i2 >= 1; i2–){ //每個元素的內部的元素迴圈(倒續)
grid[i1][i2] = grid[i1][i2-1];//把每個元素的內部元素後移一位;
}
grid[i1][0]=temp;// 下一行的初始位置是前一行的最後一個元素
}
int temp2 = grid[grid.length-1][0];//這是該陣列的最後一個元素;
for (int j = grid.length-1; j >=1; j–) {
grid[j][0] = grid[j-1][0];//把每一列的元素向下移動
}
grid[0][0]=temp2;//把最後一個元素移到第一個元素;
}
List<List> lists = new ArrayList<>();
for (int[] ints : grid) { //遍歷新的陣列
List list = new ArrayList<>();
lists.add(list);
for (int anInt : ints) {
list.add(anInt);
}
}
return lists;
}
相關文章
- 二維碼太醜?用風格遷移生成個性二維碼瞭解一下
- 利用PLSQL實現表空間的遷移(二)SQL
- java實現二維碼生成Java
- 部落格遷移
- AI繪畫第二彈——影象風格遷移AI
- Python 超簡單實現 9 種影像風格遷移Python
- BAIR提出MC-GAN,使用GAN實現字型風格遷移AI
- 伯克利AI實驗室出品:用GAN實現字型風格遷移AI
- 遷移部落格至掘金
- Perceptual Losses 風格遷移論文復現小記
- 部落格圖床遷移記圖床
- Flora影象風格遷移AppAPP
- [論文閱讀] 顏色遷移-N維pdf遷移
- UCloud AI Train深度學習實踐:使用TensorFlow實現快速風格遷移CloudAI深度學習
- 實戰程式碼(二):Springboot Batch實現定時資料遷移Spring BootBAT
- 利用PLSQL實現表空間的遷移(一)SQL
- 利用PLSQL實現表空間的遷移(四)SQL
- 利用PLSQL實現表空間的遷移(三)SQL
- 利用PLSQL實現表空間的遷移(五)SQL
- hexo部落格同步管理及遷移Hexo
- [置頂] About Me & 部落格遷移
- Java 實現順時針螺旋二維陣列輸出Java陣列
- 網易雲 MySQL例項遷移的技術實現MySql
- 遷移式升級的測試(二)
- 不同的default tablespace資料遷移(二)
- LinkedIn的Java 11遷移之旅Java
- [譯] TensorFlow 教程 #15 – 風格遷移
- Android 端影象多風格遷移Android
- 深度有趣 | 30 快速影象風格遷移
- 影像風格遷移(Neural Style)簡史
- [譯] TensorFlow 教程 #15 - 風格遷移
- Java實現將文字內容、網址連結url,生成二維碼與反解析Java
- 實現彩色二維碼程式碼實
- Java實現普通二維陣列和稀疏陣列的相互轉換Java陣列
- xtts遷移實踐TTS
- 實現二維陣列的行列互換陣列
- nodebb搭建 維護 discuz 資料遷移
- 利用MongoDB的SplitVector命令實現併發資料遷移MongoDB