链表里的找节点问题,高手指点哈!!!
请问大家哦,假如我的程序的结构里有多个立方体,每个立方体中都有一些点,于是我把立方体用数组表示,每个立方体中的一个个的点用链表存储。
那么我现在按照自己设计的先后顺序处理这些点,每处理好一个点,就把它的一些信息存到另外一个链表B的一个节点,我是为了之后能通过链表B查到先前我处理这些点的先后顺序,比如我依次取出链表B中的结点,然后根据该节点要能够找到立方体存着的相应的点,那么我在链表B的每个节点需要设计哪些信息就可以查到某个点在哪个立方体的链表的哪个节点呢?首先链表B的节点里肯定要存储点所在的立方体的数组下标,表明是哪个立方体对吧,但是接下来用什么方法找到当前点是立方体的点链表里的哪个点呢?
[解决办法]
比如点的数组如下
typedef char point[3];
point a[] = {
{ 0, 0, 1 },
{ 0, 1, 0 },
{ 1, 0 ,0 },
/* others... */
};
point b[] = {
{ 1, 0, 0 },
{ 0, 1, 0 },
{ 0, 0 ,1 },
/* others... */
};
/* 等等 */
链表声明如下
typedef struct _node{
_node* next;
point element;
}node;
[解决办法]
楼主是这个意思吗 就是二维链子
struct point
{
int x;
int y;
int z;
int num;//点结点编号
point *next;
};
struct cube
{
int num;//立方体编号
point *head;
cube *next;
};
输入要知道立方体的总数 每个立方体的点的数目