专注于互联网--专注于架构

最新标签
网站地图
文章索引
Rss订阅
class Node { int a; public Node(int a) { this.a=a; } public int A {get{return a;} set{a=value;} } public Node next; } class LinkedList { Node header; public void Generate(int x) { if(header==null) header=new Node(x); else { Node n = new Node(x); if(n.A < header.A) { n.next = h [阅读全文] [PDF]
à1.数据结构及说明 typedefstructnode { intnumber; structnode*next; }LNode,*LinkList; à2.算法设计及说明 1)建立带头结点的单链表 首先申请空间建立头结点和第一个结点;q指向第一个结点,扫描输入第一个结点的数据;p指向q;while循环,当扫描输入的q的数据域的值不等于结束标志时,p指向新开辟的空间;再输入数据,用于下一次循环判断;p指向q,连接新的q结点;p跳到q上,准备连接下一个新的结点;当循环推出后,置尾结点指针域为空指针;最后返回头结点,链表建立完毕。 2)将值为x的结点插入一个按整 [阅读全文] [PDF]
一般形式: struct结构体名 {成员及类型说明; struct结构体名*指针域; ) 指针域成员用于存放下一个数据的地址,由此完成链表中数据的链接。非指针域成员是我们真正要处理的数据。从形式上看,单链表的数据描述就是在原结构体描述数据的基础上增加指针成员。 请读者注意,定义指针域成员时,形成一种递归定义的结构体类型。C语言允许在定义结构体时这样做,以完成链表等数据结构的数据描述。 在单链表中,指针域只有一个,但非指针域个数不限制。为了描述方便,我们将非指针域个数也定为一个,并且按下面给定的类型来描述链表: structlinklist {intdata; str [阅读全文] [PDF]
对于已建立的链表,通过头指针可访问整个链表,输出链表中所有结点,统计链表结点个数及插入、删除结点。 下面以刚才建立的单链表为例进行分析,给出相应操作的实现函数。 注意两点: (1)将链表传递进函数,只需将链表头指针传递进函数。函数的形参对应实参头指针。 (2)对链表的访问用条件循环控制,循环的条件是结点的指针域非空。 1.输出链表中所有结点 voidprint(structlinklist*head)/*输出链表所有结点*/ {structlinklist*P; p=head;/*P指向链表第一个结点*/ while(p!=NULL) {printf(”%d”, [阅读全文] [PDF]
1 共4条 分1页