我正在尝试实现Warshall的算法,以求邻接矩阵的传递闭包。这就是我对这个功能的看法:
public static int[][] warshall(int A[][]){
int R[][] = A;
for (int k = 1; k < n; k++) {
for (int i = 1; i < n; i++) {
for (int j = 1; j < n; j++) {
if ((R[i][j] == 1) || ((R[i][k] == 1) && (R[k]
我想就以下主题进行研究:
我经常在我的研究部分使用下面的矩阵
我写了以下代码
Function [x ]=create_matrix1(b,l)
%This Function is used to Create Hankel Type Data Matrix
%x is a given data
%l represent window size
n = length(b);
m = n-l+1;
x = zeros(m,l);
for i=1:m
x(i,:)=b(i:i+l-1);
end;
对于少量数据的时间序列是正确的,但对于
背景:
以下是Donald论文中的伪代码:
If A is empty, the problem is solved; terminate successfully.
Otherwise choose a column, c (deterministically).
Choose a row, r, such that A[r, c] = 1 (nondeterministically).
Include r in the partial solution.
For each j such that A[r, j] = 1,
delete column j from matrix A;
我必须将矩阵表示为矩阵行的列表,使用术语[[a,b],[c,d]],并用Peano表示法表示数字。
我必须得到一行矩阵
ow(X,N,C):C是矩阵X的第N行,矩阵的列
column(X,N,C):C es矩阵X的第N列。
在矩阵的第一列和矩阵的其余部分(这是完全相同的矩阵,但没有第一列)中分解矩阵:
first_column(X,C,R): matrix X is formed by a first column C in
front of matrix R.
有人能帮帮我吗?
我在寻找一个非常大的矩阵的所有子平方的和,其中
{1,2} {3,4}在2D矩阵中返回20。我已经用java实现了这一点,但是程序非常慢。是否有更快的方法来做到这一点,或者另一种语言会更快?
public class insaneMat
{
public static void main(String[] args)
{
int[][] mat = new int[10000][10000];
try
{
Scanner input = new Scanner (new File("file.in"));
int c
我试图使用Aho-Corasick和单维KMP的组合来解决二维搜索问题,但是,我仍然需要更快的东西。
为了详细说明,我有一个大小为n1*n2的字符矩阵A,我希望找到大小为m1*m2的较小矩阵B的所有匹配项,如果可能,我希望它的大小为O(n1*n2+m1*m2)。
例如:
A = a b c b c b
b c a c a c
d a b a b a
q a s d q a
和
B = b c b
c a c
a b a
该算法应该返回匹配的左上角的索引,在这种情况下应该返回(0,1)和(0,3)。请注意,这些引用可能会重叠。
我的主题是(一堆)文本的相似性和聚类。简单地说:我想把收集到的文本聚在一起,它们应该在最后出现在有意义的集群中。要做到这一点,到目前为止,我的方法如下,我的问题在于集群。当前的软件是用php编写的。
1)相似性:我把每一份文档都当作一个“单词袋”,并把单词转换成向量。我使用
过滤(只有“真实”字)
标记化(将句子拆分成单词)
词根(将单词减少到基本形式;波特的词干器)
剪枝(剪得太高或太低的字)
作为降维的方法。在此之后,我使用了余弦相似性(就像web 上的各种站点所建议的/描述的那样)。
结果是这样的相似矩阵:
A B C D E
我有一个关于矩阵乘法实现的简单问题。我知道对于大小相等(n X n)的矩阵,有一些算法的复杂度为O(n^2.xxx)。但是,如果我有两个大小不同的矩阵A和B (p x q,q x r),那么到目前为止实现的最小复杂度是多少?我猜它是O(pqr),因为我将实现一个带有p,q和r次迭代的3个嵌套循环的乘法。特别是,现在有没有人知道库是如何实现乘法的?
我想要计算向量,
S=A B u,
其中s和u是N维复向量,A是N×M复矩阵,B是M×N复矩阵。当A、B和u的元素表示为浮点数时,以下哪两种方法具有更好的准确性(更有效的数字)?
(1)先计算B。
首先做矩阵向量乘法,
Y=B u
然后,另一个矩阵向量乘法
S=A y
(2)先计算A、B。
首先做矩阵-矩阵乘法,
C=A B
然后,矩阵向量乘法
S=C U
有什么已知的一般规则吗?
顺便说一下,我知道方法(1)比方法(2)效率高得多。
我正在尝试实现floyd warshall算法,但是它不能正常工作。 我想要的是从一个顶点到另一个顶点的最短路径距离,写在矩阵d中,前置矩阵写在矩阵pred中。输入是一个包含所有边权重的邻接矩阵。 function FloWa(C)
N = size(C)
n = min(C[1],C[2])
pred = -1*ones(C[1],C[2])
d = C
for k in 1:n
for i in 1:n
for j in 1:n
if d[i,j] > d[i,k] + d[k,j]
if pre