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

C++ 动态数据结构(二)

2014-12-27 09:48 176 查看
1.单链表结点定义的格式:

struct Link

{

type data;

struct Link *next;

};



虽然单链表插入、删除方便,不需要移动其他结点的优点,但是它也有一些缺点:

只能顺序访问,一旦断链就会丢失其中的数据,所以要注意一下。

2.单链表的遍历

遍历就是逐个访问每个数据元素的过程。遍历是各种其他操作的基础。

遍历的关键是指针的在链表结点之间的移动。

遍历中“访问”结点数据的含义非常广泛,可以是打印,也可以是比较等其它操作。

3.单链表的输出

(1)所谓单链表的输出,就是将链表的各个结点的数据输出。

(2)具体做法为:令指针 p 指向链表的头结点,输出其数据,然后使 p 指向链表的下一个结点,再输出,直到链表的末尾为止。

核心代码:

p = head;

printf( "%5d",p->data );

p = p->next;

具体代码:

#include <stdio.h>

void PrintList(struct Link *head)

{

struct Link *p;

int i = 1;

p = head;

while ( p != NULL ) {

printf("%5d%d ", i, p->data);

p = p->next;

i ++;

}

void main()

{

struct Link a={12}, b={35}, c={43};

struct Link *head;

a.next = &b;

b.next = &c;

c.next = NULL;

head = &a;

PrintList(head);

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