0

我在 Matlab 中有点菜鸟,所以我在我的 matlab 脚本中输入了“edit randperm”,但我不明白代码中 [~,P] 的含义 '[~,P]=sort(rand(1, n))'——这是显示给我的代码。谁能帮我?从我所了解的一点点来看,[~,P] 似乎将数字变成了整数(范围为 1 到 n)。但是它在代码中的赋值方式似乎很奇怪。而且我确实想知道代码中“~”和“P”的确切目的是什么。

(如果有人有关于如何在stackoverflow上正确写这个问题的提示,我也会很高兴。我也是新来的)

4

1 回答 1

1

这使用以下形式的sort()函数:

[B,IX] = sort(A,...)

记录在这里

中的波浪号

[~,P]=sort(...)

意味着第一个返回值应该被丢弃(并且第二个返回值应该分配给P)。

的总体效果[~,P]=sort(rand(1,n))是分配给从到P的数字的随机排列。1n

于 2013-10-02T22:18:52.207 回答