[问题] 这种串行要怎么自动做这样子的排列?

楼主: candy88257 (阿泰斯)   2012-12-14 19:31:14
例如:
今天有某个方程式解出来的解是:
{3i,2i,i,2,3,1+i,1-i}
很奇怪,它为啥要把1+-i放在最后面?
有办法快速将1+i跟1-i放在"其绝对值大小的位置"吗?
也就是让它变成:
{3i,2i,1+i,1-i,i,2,3}
求高手解惑!!
感谢!!!!
作者: jurian0101 (Hysterisis)   2012-02-15 16:31:00
SortBy[{}, N[Abs[#]]&] i记得改成I
楼主: candy88257 (阿泰斯)   2012-02-15 19:42:00
感谢!! 但是我用的是5.2版好像没那个指令@@
作者: akrsw (quo vadis?)   2012-02-17 11:25:00
为何你的排列是{3i,2i,1+i,1-i,i,2,3}?为何i在2和3的前面?你不是要按绝对值大小排列吗?如果你只是单纯写错的话,你可以用Sort (6以上才有SortBy)Sort[data, Abs[#1] >= Abs[#2]&] 应该可以。
楼主: candy88257 (阿泰斯)   2012-02-17 21:26:00
抱歉@@ 是我要求打错,我是要照我打的那串串行排列@@
作者: akrsw (quo vadis?)   2012-02-18 10:51:00
那你的排列规则是什么?
楼主: candy88257 (阿泰斯)   2012-02-18 11:17:00
感谢! 虚数部分照虚数系数绝对值大小排列,实部直接大小排列

Links booklink

Contact Us: admin [ a t ] ucptt.com