【发布时间】:2015-04-11 00:12:01
【问题描述】:
我有一个矩阵,它在主对角线上的元素没有排序,所以我需要一个函数来返回新矩阵,其中主对角线上的元素是排序的。我不明白为什么这不起作用。
Function[A_] := Module[{res, diagonal = {}, m, n},
{m, n} = Dimensions[A];
Table[AppendTo[diagonal, A[[i, i]]], {i, 1, m}];
dijagonal = SelectionSort[diagonal];
Table[A[[i, i]] = dijagonal[[i]], {i, 1, m}];
Return[A // MatrixForm];
];
选择排序有效。
这可以是一个矩阵的例子:
A={{60, 10, 68, 72, 64},{26, 70, 32, 19, 29},{94, 78, 86, 59, 17},
{77, 13, 34, 39, 0}, {31, 71, 11, 48, 83}}
当我运行它时,它会显示:
Set::setps: {{60,10,68,72,64},{26,70,32,19,29},{94,78,86,59,17},{77,13,部分赋值中的 34,39,0},{31,71,11,48,83}} 不是符号。 >>
【问题讨论】:
标签: sorting matrix wolfram-mathematica