第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

在矩陣內(nèi)部尋找內(nèi)矩陣外層的算法

在矩陣內(nèi)部尋找內(nèi)矩陣外層的算法

BIG陽(yáng) 2023-04-26 14:45:16
我正在嘗試解決以下算法,但卡住了。我希望你能幫忙。通過(guò)給出:大小為 N*N 的主矩陣大小為 K*L 的內(nèi)矩陣(內(nèi)矩陣包含在主矩陣中,索引已給出)。我應(yīng)該編寫一個(gè)函數(shù),返回內(nèi)部矩陣外層所有元素的列表。如果沒(méi)有元素,則返回一個(gè)空列表。在每次迭代中,內(nèi)層矩陣的大小越來(lái)越大,包括之前的內(nèi)層矩陣+外層。例如:通過(guò)給定黑色主矩陣和紅色內(nèi)矩陣,返回黃色標(biāo)記的元素。繼續(xù)直到返回一個(gè)空列表。我被困在哪里通過(guò)增加內(nèi)部矩陣的范圍 +1 并比較主矩陣和內(nèi)部矩陣的邊緣,我可以輕松找到外層的元素。但是,我卡住了如何一般地增加循環(huán)(增加層數(shù))。順便說(shuō)一句,我試圖避免遞歸解決方案。
查看完整描述

1 回答

?
躍然一笑

TA貢獻(xiàn)1826條經(jīng)驗(yàn) 獲得超6個(gè)贊

如果我正確理解了您的問(wèn)題,您可以簡(jiǎn)單地分別跟蹤內(nèi)部矩陣 (y1, x1) 和 (y2, x2) 左上角和右下角的坐標(biāo)。然后,您可以輕松獲得外層并擴(kuò)展內(nèi)部矩陣,如下所示:

獲取外層:這些元素的坐標(biāo)是

  • (y1-1, j) for j in max(0, x1-1),...,min(N-1, x2+1) (頂行,如果 y1 > 0)

  • (y2+1, j) for j in max(0, x1-1),...,min(N-1, x2+1) (底行,如果 y2 < N-1)

  • (i, x1-1) for i in y1,...,y2(左列,如果 x1 > 0)

  • (i, x2+1) for i in y1,...,y2(右列,如果 x2 < N-1)

擴(kuò)展內(nèi)部矩陣:你只需要更新角坐標(biāo)

  • y1 = max(0, y1-1), x1 = max(0, x1-1)

  • y2 = min(N-1, y2+1), x2 = min(N-1, x2+1)

然后重復(fù),直到 (y1, x1) == (0, 0) 和 (y2, x2) == (N-1, N-1)


查看完整回答
反對(duì) 回復(fù) 2023-04-26
  • 1 回答
  • 0 關(guān)注
  • 144 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)