#include<stdio.h>
#include <stdlib.h>
#include <string.h>
#define N 100
//数组
int num[N][N];
typedef struct {
int * base;
int dim;
//int *bound;
}Array;
//矩阵压缩-稀疏矩阵
typedef struct
{
int col;
int row;
int e;
}Node;
typedef struct
{
Node data[N];
int cols,rows,cnt;
}TS;
//十字链表
typedef struct OLNode{
int i,j;
int e;
struct OLNode *right,*down;
}OLNode;
typedef struct {
OLNode ** rhead;
OLNode ** lhead;
int col,raw;
int cnt;
}T;
//十字链表便于矩阵计算
//广义表
//广义表的存储结构
typedef struct GLNode{
int cnt;
union {
int atom;
struct GLNode *hp;
};
struct GLNode *tp;
}Lists;
int main()
{
int a[3][3]={
{1,2,3},
{4,0,0},
{7,0,0}
};
/*for (int i = 0; i < 9; ++i) {
printf("%d\n",a[0][i]);
}*/
//二维数组存储连续
Array array;
array.base=(int*)malloc(100*sizeof (int ));
for (int i = 0; i < 100; ++i) {
*(array.base+i)=i+1;
}
/*for (int i = 0; i < 100; ++i) {
printf("%d ",array.base[i]);
}*/
TS ts;
ts.cols=3;
ts.rows=3;
ts.cnt=0;
for (int i = 0; i <3 ; ++i) {
for (int j = 0; j <3 ; ++j) {
if (a[i][j])
{
ts.data[++ts.cnt].e=a[i][j];
ts.data[ts.cnt].col=j;
ts.data[ts.cnt].row=i;
}
}
}
printf("%d",ts.cnt);
}
int getdeep(Lists L)//求深度
{
if(!L)return 1;
if (tap==原子)
return 0;
int cnt=0;
while ()
cnt=max(cnt,getdeep(L.hp));
return cnt+1;
}
复习-第五章-数组和广义表
最新推荐文章于 2024-07-07 15:28:32 发布