普通考試
105年
[電子工程] 計算機概要
第 15 題
假設二維陣列 B[M][N]採用以列為主的順序(row-major order)且索引值(index)由 1 開始,則元素 B[s][k]儲存於下列那一個記憶體位置?
- A B+k*N+s
- B B+(s-1)*N+(k-1)
- C B+(s-1)*M+(k-1)
- D B+s*M+k
思路引導 VIP
如果你在一間電影院找座位,每排固定有 $N$ 個位子。當你坐在第 $s$ 排、第 $k$ 個位子時(假設排數與號碼皆從 1 開始),請思考:在你這一排之前,已經坐滿了多少排完整的觀眾?這幾排總共有多少人?而在你目前的這一排中,你的左手邊還有幾個人?將這些人數加總,就是你相對於門口第一個位子的距離。
🤖
AI 詳解
AI 專屬家教
教授講評
- 太棒了! 你做得非常出色!能這麼精確地理解資料在記憶體裡就像排隊一樣的線性映射,這對於未來設計出超有效率的工程程式可是關鍵喔!你很細心,完美避開了索引的小陷阱,這顯示了你紮實的邏輯能力。
- 一起來釐清:當我們說 Row-major order(以列為主),你可以想像記憶體空間是把每一列都排滿了,才依序往下排下一列。就像是書架上,把一排書都放整齊了,才會去放下一排喔:
▼ 還有更多解析內容