|
|
1
2
广播是通过扩展(“广播”)不具有相同长度的维度来工作的,以使用NxKx1广播的(例如)大小为Nx1xM的阵列给出NxKxM阵列。 这意味着,如果您广播一个长度为N的向量的操作,您将获得一个长度N的向量。 所以你需要一个字符串数组是长度为N的向量,另一个是1xM矩阵:
顺便说一句,你很少使用
|
|
|
2
1
您应该将一个向量转换为广播机制,通过扩展输入的维度来构建矩阵。
此外,以下内容也类似。
|
|
|
3
1
假设“list”指的是Vector,因为Julia中没有类似python的列表。如果你指的是元组,我建议无论如何都将其转换为Vector,因为广播最好与Arrays(Vector是其子类型)一起使用。
现在你只需要
或使用点运算符更简洁
引擎盖下发生了什么: Julia中的广播在元素方面起作用,所以如果您有2个矢量,它将不会做任何事情,因为维度匹配。
但是如果你有一个向量和一个矩阵
(矢量是1D阵列,矩阵是2D阵列)
形状
现在通常用数字
至于为什么它不适用于字符串,请参阅 this answer 。 |
|
|
4
1
基准给出:
越大
最后,即使这种算法在排序方面也有点过于困难,但产生结果时固有的时间/空间复杂性为O(n^2)。 更新: 一个更线性的O(n)时间计算(仍然是O(n^2)来制作矩阵):
与更大的
|