這篇文章將為大家詳細(xì)講解有關(guān)leetcode如何解決翻轉(zhuǎn)圖像問(wèn)題,小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。
成都創(chuàng)新互聯(lián)堅(jiān)信:善待客戶(hù),將會(huì)成為終身客戶(hù)。我們能堅(jiān)持多年,是因?yàn)槲覀円恢笨芍档眯刨?lài)。我們從不忽悠初訪客戶(hù),我們用心做好本職工作,不忘初心,方得始終。10多年網(wǎng)站建設(shè)經(jīng)驗(yàn)成都創(chuàng)新互聯(lián)是成都老牌網(wǎng)站營(yíng)銷(xiāo)服務(wù)商,為您提供成都做網(wǎng)站、網(wǎng)站建設(shè)、外貿(mào)營(yíng)銷(xiāo)網(wǎng)站建設(shè)、網(wǎng)站設(shè)計(jì)、H5響應(yīng)式網(wǎng)站、網(wǎng)站制作、品牌網(wǎng)站設(shè)計(jì)、微信小程序定制開(kāi)發(fā)服務(wù),給眾多知名企業(yè)提供過(guò)好品質(zhì)的建站服務(wù)。
給定一個(gè)二進(jìn)制矩陣 A,我們想先水平翻轉(zhuǎn)圖像,然后反轉(zhuǎn)圖像并返回結(jié)果。
水平翻轉(zhuǎn)圖片就是將圖片的每一行都進(jìn)行翻轉(zhuǎn),即逆序。例如,水平翻轉(zhuǎn) [1, 1, 0] 的結(jié)果是 [0, 1, 1]。
反轉(zhuǎn)圖片的意思是圖片中的 0 全部被 1 替換, 1 全部被 0 替換。例如,反轉(zhuǎn) [0, 1, 1] 的結(jié)果是 [1, 0, 0]。
示例 1:
輸入:[[1,1,0],[1,0,1],[0,0,0]]
輸出:[[1,0,0],[0,1,0],[1,1,1]]
解釋?zhuān)菏紫确D(zhuǎn)每一行: [[0,1,1],[1,0,1],[0,0,0]];
然后反轉(zhuǎn)圖片: [[1,0,0],[0,1,0],[1,1,1]]
示例 2:
輸入:[[1,1,0,0],[1,0,0,1],[0,1,1,1],[1,0,1,0]]
輸出:[[1,1,0,0],[0,1,1,0],[0,0,0,1],[1,0,1,0]]
解釋?zhuān)菏紫确D(zhuǎn)每一行: [[0,0,1,1],[1,0,0,1],[1,1,1,0],[0,1,0,1]];
然后反轉(zhuǎn)圖片: [[1,1,0,0],[0,1,1,0],[0,0,0,1],[1,0,1,0]]
提示:
1 <= A.length = A[0].length <= 20
0 <= A[i][j] <= 1
沒(méi)啥說(shuō)的,如果對(duì)稱(chēng)位置數(shù)值一樣,則水平翻轉(zhuǎn)再反轉(zhuǎn),二者都需要取反,即0變?yōu)?,1變?yōu)?;
對(duì)稱(chēng)位置數(shù)值不同,則水平翻轉(zhuǎn)再反轉(zhuǎn)相當(dāng)于沒(méi)有變化,保持原樣。
class Solution: def flipAndInvertImage(self, A: list) -> list: for i in range(len(A)): for j in range((len(A) + 1) // 2): if A[i][j] == A[i][len(A) - 1 - j]: A[i][j] = A[i][j] ^ 1 A[i][len(A) - 1 - j] = A[i][j] return A if __name__ == '__main__': s = Solution() A = [[1, 1, 0, 0], [1, 0, 0, 1], [0, 1, 1, 1], [1, 0, 1, 0] ] ans = s.flipAndInvertImage(A) print(ans)
關(guān)于“l(fā)eetcode如何解決翻轉(zhuǎn)圖像問(wèn)題”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,使各位可以學(xué)到更多知識(shí),如果覺(jué)得文章不錯(cuò),請(qǐng)把它分享出去讓更多的人看到。