数据结构---单链表的两种建立
2013-04-26 20:50
232 查看
单链表的建立有两种实现的方式:
(1) 一种是和输入的顺序相同
void CreateList_1(LinkList &L,int len)
{
L=(LinkList)malloc(sizeof(LNode));
L->next=NULL;
LinkList p=L,q;
for (int i=1;i<=len;++i)
{
q=(LinkList)malloc(sizeof(LNode));
scanf("%d",&q->data);
p->next=q;
p=q;
}
p->next=NULL;
}
可以看出输入的顺序和输出的顺序是相同的。
(2)另一种是和输入的顺序相反
void CreateList_2(LinkList &L,int len)
{
LinkList p;
L=(LinkList)malloc(sizeof(LNode));
L->next=NULL;
for (int i=0;i<len;i++)
{
p=(LinkList)malloc(sizeof(LNode));
scanf("%d",&p->data);
p->next=L->next;
L->next=p;
}
}
可见顺序是相反的。
(1) 一种是和输入的顺序相同
void CreateList_1(LinkList &L,int len)
{
L=(LinkList)malloc(sizeof(LNode));
L->next=NULL;
LinkList p=L,q;
for (int i=1;i<=len;++i)
{
q=(LinkList)malloc(sizeof(LNode));
scanf("%d",&q->data);
p->next=q;
p=q;
}
p->next=NULL;
}
可以看出输入的顺序和输出的顺序是相同的。
(2)另一种是和输入的顺序相反
void CreateList_2(LinkList &L,int len)
{
LinkList p;
L=(LinkList)malloc(sizeof(LNode));
L->next=NULL;
for (int i=0;i<len;i++)
{
p=(LinkList)malloc(sizeof(LNode));
scanf("%d",&p->data);
p->next=L->next;
L->next=p;
}
}
可见顺序是相反的。
相关文章推荐
- 数据结构第四周项目(一)——建立单链表
- 数据结构单链表的建立、删除
- 【数据结构-链表】头插法和尾插法建立单链表
- 数据结构邻接表的建立以及两种遍历
- 数据结构例程——单链表的建立
- 数据结构线性表的两种存储形式顺序表和单链表的比较
- 数据结构 链表 单链表的建立 C语言版
- 数据结构系列之链表——单链表的建立
- 数据结构--------二叉树的建立和前序遍历------递归实现
- 第四周-单链表的的建立
- 数据结构第七周项目一-建立链队算法库
- 数据结构实践---单链表的初始化,建立,插入,查找,删除。
- 数据结构学习:利用链表建立二叉树
- 第四周 建立单链表
- C++单链表的建立(有头节点)
- 关于单链表的两种创建方式
- 数据结构【线性表(二)链表】项目之单链表:递增判断
- 【数据结构】采用数组的形式实现顺序表的建立、插入、删除等操作
- 第四周项目1-建立单链表
- 数据结构和算法笔记 lesson4 线性表链式存储结构 单链表