将单链表中终端结点的指针端由空指针改为指向头结点,就使整个单链表形成一个环,这种头尾相接的链表称为单循环链表,简称循环链表。 CircleLinkList.h main.c 运行结果: ...
分类:
其他好文 时间:
2018-04-25 22:13:43
阅读次数:
192
一、PTA实验作业 1.题目1:线性表元素的区间删除 2. 设计思路 3.代码截图 4.PTA提交列表说明 一开始将顺序表和链表的操作弄错了,写成“L Data[i]=L Data[i+1]”,导致程序全部错误,后来重新用顺序表的方式处理数据,顺序表的操作类似数组(“编译错误”的原因忘记了)。 1. ...
分类:
其他好文 时间:
2018-03-25 23:00:25
阅读次数:
279
#include<iostream.h> #include<stdio.h> #include<stdlib.h> typedef struct node { int data1; int data2; node *next; }list; list *creat(int n)//建立单循环链表 { ...
分类:
其他好文 时间:
2018-02-12 11:18:38
阅读次数:
180
第一次听到链表这个词的时候觉得很酷,可能玩游戏觉得链是武器,固定思维了,哈哈。 接口: using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threadi ...
分类:
其他好文 时间:
2017-12-20 13:59:44
阅读次数:
238
静态链表 对于没有指针的编程语言,可以用数组替代指针,来描述链表。让数组的每个元素由data和cur两部分组成,其中cur相当于链表的next指针,这种用数组描述的链表叫做静态链表,这种描述方法叫做游标实现法。我们对数组的第一个和最后一个元素做特殊处理,不存数据。让数组的第一个元素cur存放第一个备 ...
分类:
其他好文 时间:
2017-11-13 21:33:16
阅读次数:
116
已知n个人(以编号1,2,3...n分别表示)围坐在一张圆桌周围。从编号为k的人开始报数,数到m的那个人出列;他的下一个人又从1开始报数,数到m的那个人又出列;依此规律重复下去,直到圆桌周围的人全部出列。 #include<stdio.h>#include<malloc.h>typedef stru ...
分类:
其他好文 时间:
2017-10-10 20:40:00
阅读次数:
135
1. 如果一个链表结点数大于等于2,把首节点变为尾结点 2. 将单循环链表拆成两个单循环链表 3. 有一个递增有序的顺序表va。将 x 插入到顺序表的适当位置上,保持顺序表有序 4. 在带头结点的单链表结构上实现线性表操作 Locate(L,x) ...
分类:
其他好文 时间:
2017-08-31 14:33:18
阅读次数:
119
简介 循环单链表 是在在单链表的基础上,用最后的一个结点的指针域指向头结点形成的。因此它在逻辑上是一个环形结构。 循环单链表在实际编程中很少用。 要点:1、遍历结束的标志是 p == 【头结点地址】,而不是p==NULL 2、表为空的判断标志是: if( head->next == head ) 3 ...
分类:
其他好文 时间:
2017-08-24 01:15:09
阅读次数:
212
/*---------约瑟夫环---------*/ /*---------问题描述---------*/ /*编号为1,2,…,n的n个人围坐一圈,每人持一个密码(正整数)。 一开始任选一个正整数作为报数上限值m, 从第一个人开始自1开始顺序报数,报到m时停止。 报m的人出列,将他的密码作为新的m... ...
分类:
编程语言 时间:
2017-08-09 23:47:13
阅读次数:
279
在单链表当中,从已知节点出发,只能访问该节点的后继节点,却无法访问 该节点之前的节点,在单循环链表当中,虽然可以通过一个节点访问表中所 有节点,但是要找到直接前驱却要遍历整个表,因此为了加快寻找某个节点 的前驱,可以在每个节点的结构体上添加一个直接访问前驱的指针域来快速 定位前驱节点。下面是简单的双 ...
分类:
其他好文 时间:
2017-07-05 22:03:53
阅读次数:
183