这是我想要以链接列表形式表示的矩阵
这个想法是它是一个二维矩阵。红色字体是常规[i] [j],蓝色是我想要存储在链接列表中的额外信息。
在这个矩阵中,我需要存储几个信息。
问题是我要获得4个链接列表,如果我创建4个数组指针[用于2-D矩阵]?我怎么得到方向指针???
如果你很好奇,我正在努力解决卡诺图。 link text
感谢任何帮助。谢谢!
答案 0 :(得分:3)
请勿使用链接列表,请使用二维数组。快速&脏(和不完整):
struct Matrix {
struct Entry {
int label;
bool value;
};
Entry *array;
size_t rowlen;
Matrix(int n) : rowlen(n) { array = new Entry[n*n]; }
~Matrix() { delete[] array; }
Entry &at(int i, int j) { return array[i * rowlen + j]; }
// etc.
};
不需要方向指针,只需使用一些智能加法和减法逻辑。