我试图按值的降序对以下一维数组进行排序:
setuptools
我知道在这种情况下,数组已经按降序排列,但我想弄清楚为什么当我使用sudo python3 setup.py install
时,MATLAB会返回一个新的顺序:
109 32 29 22 22 19 15 12 12
这不再按降序排列。当数组的顺序正确时,这显然会导致程序出错。
答案 0 :(得分:2)
您提供的顺序确实不正确,但肯定不 MATLAB的错误。由于您的数组已按降序排列,因此排序索引应简单地从1到9进行枚举。
我非常怀疑罪魁祸首是因为你没有正确输入数组。此外,您的错误无法再现。
这可以通过将其放入MATLAB并检查排序索引来验证:
A = [109 32 29 22 22 19 15 12 12];
[Ai,ind] = sort(A,'descend');
Ai
与输入A
相同,而ind
将从1到9按升序排列。