희소 행렬 의 삼원 그룹 테이블 저장 C 언어
#include <stdio.h>
#define MaxSize 100
typedef int DataType;
typedef struct {
DataType v;
int i, j;
}TriTupleNode;
typedef struct {
TriTupleNode data[MaxSize]; //
int m, n, t; //
}TriTupleTable;
void CreateTriTupleTable(TriTupleTable *T)
{
//int m, n, t;
int i;
printf(" , :");
scanf("%d%d%d", &T->m, &T->n, &T->t);
for (i=1; i<=T->t; ++i)
{
printf(" %d ", i);
scanf("%d%d%d", &T->data[i].i, &T->data[i].j, &T->data[i].v);
}
}
void Traverse(TriTupleTable *T)
{
int i;
printf("%d %d %d
", T->m, T->n, T->t);
for (i=1; i<=T->t; ++i)
{
printf("%d %d %d
", T->data[i].i, T->data[i].j, T->data[i].v);
}
}
void TransMatrix(TriTupleTable *A, TriTupleTable*B)
{
int p, q, col;
B->m = A->n;
B->n = A->m;
B->t = A->t;
if (0 == B->t)
return ;
q = 0;
for (col=0; col<A->n; ++col)
for (p=0; p<A->t; ++p)
{
if (A->data[p].j == col)
{
B->data[q].i = A->data[p].j;
B->data[q].j = A->data[p].i;
B->data[q].v = A->data[p].v;
++q;
}
}
}
int main(void)
{
TriTupleTable A, B;
CreateTriTupleTable(&A);
Traverse(&A);
TransMatrix(&A, &B);
Traverse(&B);
return 0;
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Docker를 사용한 React 및 .NET Core 6.0 샘플 프로젝트 - 1부이 기사에서는 Entity Framework Core Code First 접근 방식을 사용하는 ASP.NET Core 6.0 WEP API의 CRUD(만들기, 읽기, 업데이트 및 삭제) 작업에 대해 설명합니다. 웹 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.