01 故事起源有這樣的一種矩陣,從左上角開始,順時(shí)針從外向里旋轉(zhuǎn),數(shù)字依次遞增,如果給定任意行n、列m,請(qǐng)問如何輸出這樣的矩陣呢?
?
?02
分析這個(gè)問題第一眼就覺得很簡(jiǎn)單,為啥呢,因?yàn)橐?guī)律很明顯,問題描述都已經(jīng)說的很清晰了,只要按照要求模擬一遍就行了。如果現(xiàn)在讓你把這個(gè)問題描述給其他人,你是不是也會(huì)這樣來描述:一直向前走,無路可走向右轉(zhuǎn)。。。
?
?03
模擬啥是模擬呢,模擬就是按照你的想法,機(jī)械的執(zhí)行命令就可以了,沒有啥算法可言,就像這個(gè)問題一樣。
?不過機(jī)器并不能聽懂你的高級(jí)語言,所以需要翻譯一下。
?說機(jī)話整個(gè)過程拆解為4個(gè)步驟:
從矩陣左上角開始向右直到邊界;2)向下;3)向左;4)向上。
重復(fù)上面4個(gè)步驟,直到填滿整個(gè)矩陣。
?于是我們就得到了初步的框架:while(還沒填滿){ //向右直到邊界 j++; //向下直到邊界 i++; //向左直到邊界 j--; //向上直到邊界 i--; } 04 細(xì)節(jié)從左向右,結(jié)束時(shí)j超出邊界,需要j--。最上一行已填滿,上邊界下移,同時(shí)i也下移。
?從上向下,結(jié)束時(shí)i超出邊界,需要i--。最右一列已填滿,右邊界左移,同時(shí)j也左移。
?其余2個(gè)過程同理。
05
代碼實(shí)現(xiàn)
#defineROW5
#defineCOLUMN5
voidmain(){
intleft=0,right=COLUMN-1,top=0,bottom=ROW-1;
intf[ROW][COLUMN],i=0,j=0,num=1;
while(i>=top&&i<=?bottom?&&?j?>=left&&j<=?right)?{
????????//left->right
while(j<=?right)?{
????????????f[i][j++]?=?num++;
????????}
????????j--;
????????top++;
????????i++;
????????//top->bottom
while(i<=?bottom)?{
????????????f[i++][j]?=?num++;
????????}
????????i--;
????????right--;
????????j--;
????????//right->left
while(j>=left){
f[i][j--]=num++;
}
j++;
bottom--;
i--;
//bottom->top
while(i>=top){
f[i--][j]=num++;
}
i++;
left++;
j++;
}
}
06
總結(jié)模擬問題一般都比較簡(jiǎn)單,只需要把整個(gè)框架過程抽象出來,然后機(jī)械的實(shí)現(xiàn)即可。但偶爾也會(huì)遇到復(fù)雜的模擬,一般都是細(xì)節(jié)涉及的比較多,比如邊界信息太多,或者過程太多等。不過這種問題很適合鍛煉代碼實(shí)現(xiàn)能力,多做就能達(dá)到“有思想就一定能實(shí)現(xiàn)”的狀態(tài)。
審核編輯 :李倩
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。
舉報(bào)投訴
-
模擬
+關(guān)注
關(guān)注
7文章
1447瀏覽量
85384 -
矩陣
+關(guān)注
關(guān)注
1文章
448瀏覽量
36093
原文標(biāo)題:旋轉(zhuǎn)矩陣
文章出處:【微信號(hào):TheAlgorithm,微信公眾號(hào):算法與數(shù)據(jù)結(jié)構(gòu)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
熱點(diǎn)推薦
探索MAX25504:汽車LED矩陣驅(qū)動(dòng)的理想之選
通道的模塊化矩陣驅(qū)動(dòng)芯片。其集成的電流輸出端每個(gè)都能吸收高達(dá)65mA的LED電流,源驅(qū)動(dòng)引腳則以多路復(fù)用的方式為矩陣的列提供電流。芯片的電源由外部3.3V或5V電源提
汽車LED矩陣驅(qū)動(dòng)新選擇:MAX25505
概述 MAX25504/MAX25505是4 x 24通道的模塊化矩陣驅(qū)動(dòng)器。其集成的電流輸出端每個(gè)可吸收高達(dá)65mA的LED電流,源驅(qū)動(dòng)引腳以多路復(fù)用的方式為矩
探索MAX25503:4 x 24汽車LED矩陣驅(qū)動(dòng)器的卓越性能
的模塊化矩陣驅(qū)動(dòng)器。它的每個(gè)集成電流輸出能夠吸收高達(dá)65mA的LED電流,源驅(qū)動(dòng)引腳則以多路復(fù)用的方式為矩陣的列提供電流。該設(shè)備的電源來
MAX25500:4 x 24 汽車 LED 矩陣驅(qū)動(dòng)器的卓越之選
是一款專為本地調(diào)光汽車顯示屏設(shè)計(jì)的 4 x 24 通道模塊化矩陣背光驅(qū)動(dòng)器。它的集成電流輸出每個(gè)可吸收高達(dá) 72mA 的發(fā)光二極管(LED)電流,
MAX25501:汽車LED矩陣驅(qū)動(dòng)領(lǐng)域的新星
。今天,就為大家詳細(xì)介紹一款非常出色的4 x 24汽車LED矩陣驅(qū)動(dòng)器——MAX25501。 文件下載: MAX25501.pdf 器件概述 MAX25501是一款專為局部調(diào)光汽車顯示屏設(shè)計(jì)的4 x 24通道模塊化矩陣背光驅(qū)動(dòng)器。它的集成電流
一文讀懂 HDMI 矩陣:分類、特性、場(chǎng)景全攻略,告別信號(hào)切換難題
從高等數(shù)學(xué)線性代數(shù)的矩陣概念延伸來看,信號(hào)傳輸領(lǐng)域中的矩陣,通常指在多路輸入場(chǎng)景下具備多路輸出選擇功能的結(jié)構(gòu)模式,形成類似矩陣的信號(hào)分配架構(gòu)。其核心特性為:每一路
【技術(shù)帖】艾為擴(kuò)展IC助力解決矩陣鍵盤痛點(diǎn)
解決方案。圖1矩陣鍵盤概念圖矩陣按鍵的基本原理市面大部分矩陣按鍵應(yīng)用本質(zhì)其實(shí)就是通過行列交叉點(diǎn)檢測(cè)按鍵狀態(tài),其工作原理大概分以下三個(gè)步驟:行線設(shè)置為輸出,列線設(shè)置為
SLG47525/28:高性能可編程混合信號(hào)矩陣的深度剖析
SLG47525/28:高性能可編程混合信號(hào)矩陣的深度剖析 在電子設(shè)計(jì)領(lǐng)域,尋求小型化、低功耗且功能強(qiáng)大的組件是永恒的追求。Renesas的SLG47525/28可編程混合信號(hào)矩陣就是這樣一款
高清混合矩陣 vs 傳統(tǒng)矩陣:別再瞎選!3 大核心差異 + 行業(yè)選型攻略,選錯(cuò)可能虧大了
在數(shù)字化視聽系統(tǒng)快速發(fā)展的當(dāng)下,矩陣切換器作為信號(hào)傳輸與調(diào)度的 “核心樞紐”,其性能差異直接影響著視聽體驗(yàn)的質(zhì)量與系統(tǒng)運(yùn)行的穩(wěn)定性。目前市場(chǎng)上主流的矩陣切換器主要分為 “高清混合矩陣切換器
訊維全域智能矩陣系統(tǒng)正式發(fā)布
近日,訊維正式發(fā)布了其最新力作:全域智能矩陣系統(tǒng)。該系統(tǒng)以"一體五智,化繁為簡(jiǎn)"為核心理念,集成了矩陣切換、大屏拼控、智能中控、視頻錄播及AI智能應(yīng)用五大核心功能,旨在為會(huì)議室、指揮中心、教室、展廳等多媒體場(chǎng)景提供無縫、智能、一體化的信號(hào)管理解決方案,引領(lǐng)行業(yè)邁向高效、可
?LP5812 4×3矩陣RGB LED驅(qū)動(dòng)器技術(shù)文檔總結(jié)
LP5812 是一款具有自主動(dòng)畫引擎控制功能的 4 × 3 矩陣 RGB LED 驅(qū)動(dòng)器。該器件在點(diǎn)亮LED時(shí)具有0.4mA(典型值)的超低正常工作電流。
采用時(shí)間交叉復(fù)用(TCM)結(jié)構(gòu)
求助,關(guān)于STM32H743使用DSP進(jìn)行矩陣求逆計(jì)算出現(xiàn)的問題求解
我正在STM32H743上實(shí)現(xiàn)一個(gè)算法,需要進(jìn)行一個(gè)20*20的矩陣求逆,但是計(jì)算結(jié)果與matlab對(duì)比差距非常大,完全不正確,原矩陣A的部分?jǐn)?shù)值類似如下:
在matlab中求逆的部分結(jié)果如下:
但是在STM32H743中的求逆計(jì)算結(jié)果卻是
發(fā)表于 08-08 07:24
無刷直流電機(jī)狀態(tài)方程系數(shù)矩陣的動(dòng)態(tài)更新
的仿真建模。把系數(shù)矩陣放在靜態(tài)變量存儲(chǔ)區(qū),可直接修改狀態(tài)方程組的系數(shù)矩陣,達(dá)到快速修改此系數(shù)矩陣的目的。另外,在每個(gè)仿真步長(zhǎng)的輸出階段修改系數(shù)矩陣
發(fā)表于 07-09 14:17
如何輸出這樣的矩陣呢?
評(píng)論