结点
package crossList;
public class OLNode {
//非零元素的行和列下标
int row, col;
int value;
//右边节点指针
OLNode right;
//下方节点指针
OLNode down;
}
package crossList;
import crossList.OLNode;
import java.util.Scanner;
public class CrossList {
//十字行链表的头指针
OLNode row_head[];
//十字列链表的头指针
OLNode col_head[];
//稀疏矩阵的行数、列数和非零元素的个数
int m, n, len;
//建立十字链表
public CrossList()
{
int m, n, t;
int i, j, e;
OLNode p=new OLNode();
OLNode q=new OLNode();
//采用十字链表存储结构,创建稀疏矩阵M
Scanner sc=new Scanner(System.in);
m=sc.nextInt();
n=sc.nextInt();
t=sc.nextInt();
this.m = m;
this.n = n;
this.len = t;
//初始化行头指针向量,各行链表为空的链表
for(int h=0; h<m+1; h
这个Java程序定义了十字链表的节点类`OLNode`和十字链表类`CrossList`,用于存储稀疏矩阵。通过输入矩阵的行数、列数和非零元素数量,程序读取数据并创建相应的十字链表结构。节点包含行、列索引和值,以及指向右侧和下方节点的指针。`CrossList`类初始化行头和列头指针,并根据输入数据插入节点到相应的位置。
最低0.47元/天 解锁文章

4915

被折叠的 条评论
为什么被折叠?



