您的位置:首页 > 理论基础 > 数据结构算法

【数据结构】循环链表的建立与输出

2015-11-10 14:43 357 查看
因为循环链表就是讲单链表的最后一个结点的指针不置空,而是指向头结点的next域。因此这里就不加别的操作,建立后便输出,其他操作与单链表无异。

循环链表的建立与输出.cpp

#include <iostream>

using namespace std;

typedef int ElemType;

typedef struct LNode

{

ElemType data;

struct LNode *next;

}LNode, * LinkList;

void CreatList(LinkList &L, int n)

{

LNode *r,*s;

L = new LNode;

L->next = NULL;

r = L;

for (int i = 0; i < n; i++)

{

s = new LNode;

cin >> s->data;

s->next = L->next;

r->next = s;

r = s;

}

}

void PrintList(LinkList L)

{

LNode *t;

t = L->next;

while (1)

{

cout << t->data << " ";

t = t->next;

if (t->next == L->next)

{

cout << t->data << " ";

break;

}

}

cout << endl;

}

void main()

{

LinkList L;

int n;

cout << "请输入循环链表元素个数n:" << endl;

cin >> n;

cout << "请输入循环链表元素:" << endl;

CreatList(L, n);

cout << "循环链表初始元素为:" << endl;

PrintList(L);

}



内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: