[問題]新手簡單問題一問@@

看板MATLAB作者 (大氣電漿機)時間11年前 (2014/04/26 00:24), 11年前編輯推噓1(104)
留言5則, 3人參與, 最新討論串1/1
有一個矩陣a=randn(200) 我想要用for if 等方法做比較,然後找出其中最小的10項 請問有辦法嗎? @@ 我知道用sort可以很簡單的找出來.. if a(i)>a(i+1) then a(i)=a(i+1) else..... 痾就大致上這種感覺,一個一個比較把兩百項比完,抓出最小的10項 請問有可能用這樣的方式完成嗎 ? @@ -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 122.118.17.9 ※ 文章網址: http://www.ptt.cc/bbs/MATLAB/M.1398443077.A.526.html ※ 編輯: hydrai (122.118.17.9), 04/26/2014 00:24:50

04/26 08:45, , 1F
b = a(:); c = sort(b, 'ascend'); c(1:10) 就是你要的
04/26 08:45, 1F

04/27 17:12, , 2F
不用sort就去找演算法...
04/27 17:12, 2F

04/28 01:26, , 3F
先將矩陣前10個元素挑出來,然候跟剩餘的元素比較,有較
04/28 01:26, 3F

04/28 01:26, , 4F
小則替換10個元素中最大的,用max
04/28 01:26, 4F

04/28 01:27, , 5F
我想的是這樣啦!
04/28 01:27, 5F
文章代碼(AID): #1JMen5Kc (MATLAB)
文章代碼(AID): #1JMen5Kc (MATLAB)