[問題] 如何使用for loop執行矩陣搬移

看板C_and_CPP (C/C++)作者 (aada)時間16年前 (2010/02/03 13:07), 編輯推噓2(202)
留言4則, 2人參與, 最新討論串1/3 (看更多)
請問一下, 關於矩陣搬移的問題, 假設今天我先建立一個6x6值為0的矩陣A, 如下 矩陣A: 矩陣B: 矩陣C: 0 0 0 0 0 0 0 1 2 3 4 5 0 1 2 3 4 5 0 0 0 0 0 0 6 7 8 9 10 11 12 13 14 15 16 17 0 0 0 0 0 0 12 13 14 15 16 17 24 25 26 27 28 29 0 0 0 0 0 0 18 19 20 21 22 23 6 7 8 9 10 11 0 0 0 0 0 0 24 25 26 27 28 29 18 19 20 21 22 23 0 0 0 0 0 0 30 31 32 33 34 353 0 31 32 33 34 35 如今我有一個6x6的矩陣, 想把矩陣B的1,3,5行的資料搬到矩陣A的1,2,3行, 矩陣B的2,4,6行的資料搬到矩陣A的4,5,6行,最後結果如矩陣C, 我目前可以每個值用手動的方法輸入, 但要使用for迴圈的話, 還沒辦法, 是否板上的大大可以提是一下,我的for迴圈應該要怎麼寫, 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.134.115.251

02/03 13:10, , 1F
你是寫一般C/C++還是CUDA!? 如果是普通C/C++跑幾個迴圈
02/03 13:10, 1F

02/03 13:11, , 2F
就搞定了吧!? 除非你matrix與array的col/row方向搞錯.
02/03 13:11, 2F

02/03 13:12, , 3F
順序有放對data layout合適, 幾個memcpy就做完了...@@"
02/03 13:12, 3F

02/03 14:43, , 4F
用一個loop搭配memcpy應該蠻快的一一a
02/03 14:43, 4F
文章代碼(AID): #1BQGIGqi (C_and_CPP)
文章代碼(AID): #1BQGIGqi (C_and_CPP)