[問題] 排列顛倒

作者: yuyu0930 (葡萄籽)   2015-03-26 21:23:22
各位大大,小妹剛接觸mathematica,非常非常菜,想請教一個問題
如果想將數列裡的數字順序排列顛倒,除了使用reverse
例如:
Reverse[{a,,b,3,4,5,c ,d }]=>{d,c,5,4,3,b,a}
還能用什麼其他的數學運算使數列顛倒
拜託各位大大超賜交
作者: chungyuandye (養花種魚數月亮賞星星)   2015-03-26 23:09:00
yourlist[[Range[Length[yourlist], 1, -1]]]
作者: yuyu0930 (葡萄籽)   2015-03-28 11:31:00
太感謝了~~
作者: biglion ( )   2015-03-28 14:37:00
純粹玩玩 Flatten[Fold[{#2, #1} &, yourlist]]f/@yourlist//.{f[x_],t___,y___Integer}->{t,x,y}想要更複雜的方法一定找得到 不過效率都沒有Reverse高抱歉 我忽略了串列元素未必為整數 前面規則式方法應改為:f/@list//.{f[x_],t___,y___?(FreeQ[#,f]&)}->{t,x,y}規則式中的f可改成任意未定義的函數 但不能出現於串列中
作者: LPH66 (-6.2598534e+18f)   2015-03-28 21:34:00
是說新版的 MMA 也有類似 Matlab 的 span 語法本題的倒轉可以用 list[[-1;;1;;-1]] 達成這裡 a;;b;;c 是由 a 到 b 每次跳 c 這樣的意思a, b 是負數時表示倒數
作者: yuyu0930 (葡萄籽)   2015-03-30 06:55:00
謝謝各位~

Links booklink

Contact Us: admin [ a t ] ucptt.com