
在头部插入结点建立单向链表这个算法中有点疑惑,求详细解释,还有我不想听废话
LinkNode*CreateLinkList()//头插入法无头结点建立线性表{LinkNode*head,*p,*s;intx;intz=1,n=0;head=NUL...
LinkNode *CreateLinkList()//头插入法无头结点建立线性表
{ LinkNode *head,*p,*s;
int x;
int z=1,n=0;
head=NULL;
printf("\n\t\t建立一个线性表");
printf("\n\t\t说明:请逐个输入整数,结束标记为“-1”!\n");
while(z)
{ printf("\t\t输入:");
scanf("%d",&x);
if(x!=-1)
{ s=(LinkList *)molloc(sizeof(LinkNode));
n++;
s->data=x;
s->next=head;
head=s;
}
else z=0;
}
return head;
}
当中
s->data=x;
s->next=head;
head=s;
这三句的解释 展开
{ LinkNode *head,*p,*s;
int x;
int z=1,n=0;
head=NULL;
printf("\n\t\t建立一个线性表");
printf("\n\t\t说明:请逐个输入整数,结束标记为“-1”!\n");
while(z)
{ printf("\t\t输入:");
scanf("%d",&x);
if(x!=-1)
{ s=(LinkList *)molloc(sizeof(LinkNode));
n++;
s->data=x;
s->next=head;
head=s;
}
else z=0;
}
return head;
}
当中
s->data=x;
s->next=head;
head=s;
这三句的解释 展开
展开全部
s->data=x;
s->next=head;
head=s;
"s" 是刚开辟的节点的指针
s->data=x; :把从键盘读入的值付给节点里的data;
s->next=head; 因为是头插入法插入节点,所以把这一次刚开辟的节点指向上次的头结点,那新节点就为这次的头结点;
head=s; :为下次重新插入节点作准备,即设为旧节点
s->next=head;
head=s;
"s" 是刚开辟的节点的指针
s->data=x; :把从键盘读入的值付给节点里的data;
s->next=head; 因为是头插入法插入节点,所以把这一次刚开辟的节点指向上次的头结点,那新节点就为这次的头结点;
head=s; :为下次重新插入节点作准备,即设为旧节点
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询