Re: [問題] 這種串列要怎麼自動做這樣子的排列?

看板Mathematica作者 (養花種魚數月亮賞星星)時間12年前 (2012/12/18 16:17), 編輯推噓1(100)
留言1則, 1人參與, 最新討論串2/2 (看更多)
※ 引述《candy88257 (阿泰斯)》之銘言: : 例如: : 今天有某個方程式解出來的解是: : {3i,2i,i,2,3,1+i,1-i} : 很奇怪,它為啥要把1+-i放在最後面? : 有辦法快速將1+i跟1-i放在"其絕對值大小的位置"嗎? : 也就是讓它變成: : {3i,2i,1+i,1-i,i,2,3} : 求高手解惑!! : 感謝!!!! mysort[mylist_List]:=Block[{temp1,temp2}, temp1=Reverse[Sort[{Abs[Im[#]],#}&/@ Select[mylist,Head[#]==Complex&]]][[All,2]]; temp2=Sort[Complement[mylist,temp1]]; Flatten[{temp1,temp2}] ] list = {3 I, 2 I, 1 + I, 1 - I, I, 2, 3} mysort[list] -- 養花種魚數月亮賞星星 http://chungyuandye.twbbs.org -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.232.193.119

12/20 12:08, , 1F
感謝!!
12/20 12:08, 1F
文章代碼(AID): #1Gq2Qmv0 (Mathematica)
文章代碼(AID): #1Gq2Qmv0 (Mathematica)