[問題] 排序法

看板Fortran作者 ( )時間13年前 (2011/11/22 00:29), 編輯推噓1(103)
留言4則, 1人參與, 最新討論串1/2 (看更多)
是這樣的最近開始使用fortran 需要使用到一些排序方法 如果我現在有一組數列比如說 1,2,3,4,5 我想要把他排成 21345 或 23145 或 23415 23451 簡單的來說就是把一往後抓個位置塞 可是序列不變 想請問要怎樣寫他才能這樣換 想了好多方法還是想不出來 試過兩兩交換換過去 可是這樣好複雜 而且如果N要放大又不試用 所以想請教一下 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.232.70.200

11/22 01:01, , 1F
你這叫"插入排序法" google一下吧
11/22 01:01, 1F

11/22 01:02, , 2F
移動數字的方式 以上面的例子 先把1存到temp
11/22 01:02, 2F

11/22 01:02, , 3F
再把陣列後面的345用一個迴圈全部一次往前移
11/22 01:02, 3F

11/22 01:03, , 4F
最後的位置填回temp中的1
11/22 01:03, 4F
文章代碼(AID): #1EodnFOe (Fortran)
討論串 (同標題文章)
文章代碼(AID): #1EodnFOe (Fortran)