2016-11-22 2 views
-2

나는 희소 행렬의 추가 코드를 읽고이 조건 건너 온 한스파 스 매트릭스 또한 조건은

if(sp1[0][0] != sp2[0][0] || sp1[0][1] != sp2[0][1]) 
{ 
    printf("Invalid matrix size "); 
    exit(0); 
} 

비 제로의 행과 열 번호가 동일해야 이유를 이해 할 수 없습니다? 죄송합니다. 초보자입니다.

전체 코드는 제 1 행렬의 행 번호가 2 매트릭스의 행 수와 동일해야 매트릭스 또한 here

+0

값 ould는 동일하게 추가를 수행합니다. –

+0

왜 동일해야하며, 그렇지 않은 경우에도 추가 할 수 있습니다. – Sniper

+0

해당 코드의 작성자에게 문의하십시오. 우리가 _ "이 아니더라도 추가 할 수 있는지에 대해서는 잘 모르겠습니다. –

답변

2

이다.

열에 대해서도 마찬가지입니다.

첫 번째 행렬의 열 개수는 두 번째 행의 열 개수와 같아야합니다.

게시 한 코드가 그 것입니다. 여기 링크 된 코드에서 인용이며 다음과 같이 희소 행렬이 저장된

이 행렬에서

S [0] [0] = 희소 행렬의 전체 행

S [0] [1] = 희소 행렬에서 총 컬럼

S [0] [2] = 비 - 제로의 총 개수가 링크의 설명에서 행과 열 쉬 수가

+0

그것의 행렬이 아니라, 희박한 행렬 추가. 행의 수는 0이 아닌 행의 수를 나타내며 열 – Sniper

+0

과 동일합니다. 링크 된 코드에서'sp [0] [0]'과'sp [0] [1]'는 실제 매트릭스. –

+0

희소하지만 다른 차원의 행렬을 추가 할 수는 없습니다. 0이 아닌 행의 수를 아는 것만으로는 가치가없는 행이 몇 개 더 있는지 모르기 때문에 도움이되지 않는다는 것에 동의합니다. 행렬을 추가 할 수 있는지 알려면 정확한 크기가 필요합니다. "0이 아닌"차원 만 있으면 쓸모가 없습니다. – ComradeJoecool