Re: [問題] 一維陣列相乘能不用迴圈嘛?
※ 引述《chris70211 (克里斯)》之銘言:
: 寫程式的時候遇到一個問題 由於程式效能的關係
: 希望需要寫一個兩個一維陣列相乘的程式
: 目前的程式寫法像是這樣
: int []R1=new int[]{1,2,3,4,5,6};
: int []R2=new int[]{1,2,3,4,5,6};
: int []R3=new int[6];
: for (int i=0;i<R1.Length;i++)
: {
: R3[i]=R1[i]*R2[i];
: 或者是
: R3[i]=R1[i]*Math.Sin(i/t);//類似~~
: }
: 由於實際上的陣列長度可能會到五百或一千
: 用迴圈做的話再處理時間上會花太多時間
: 會跟不上其它執行緒的處理速度
: 不知道這部分有沒有什麼方法可以更省時的!! 謝謝>"<
請問你陣列R1 R2 的值 是動態產生的嗎? 如果是 你可以宣告一個struct或是 class
去紀錄r1 r2 r3 的值 在每次初始struct r3=r1*r2 或是 r3=r1*math.Sin...
等 如果是先行宣告 我會先宣告一組array int[] ind={0,1,2...R1.length-1};
再透過Linq 去產生 var r3=from n in ind select R1[n]*R2[n]或~~
你在參考看看
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.220.72.246
→
06/24 13:16, , 1F
06/24 13:16, 1F
→
06/24 13:20, , 2F
06/24 13:20, 2F
→
06/26 18:09, , 3F
06/26 18:09, 3F
討論串 (同標題文章)