恢复内容开始 1:有头节点、单向、不循环链表 对于这种有头节点的单向不循环链表插入数据如下图: 1)头部插入 2)尾部插入 代码如下 : 1 #include "stdafx.h" 2 #include<iostream> 3 4 using namespace std; 5 6 typedef i ...
分类:
其他好文 时间:
2017-03-23 23:54:39
阅读次数:
360
几个容易忽视的点儿,这里记一下 删除结点中,删除特定元素值结点及删除尾结点 都需要通过循环找到!注意!没有循环体,找到即可!! 一、删掉info=el的结点【注意链表为空!和只有一个结点!!】 删除头结点【注意链表只有一个结点】 删除尾结点【还是注意链表只有一个结点】 二、链表添加新结点 链表头加一 ...
分类:
其他好文 时间:
2017-03-12 13:11:52
阅读次数:
158
#include #include #define OK 1 #define ERROR -1 #define TRUE 1 #define FALSE -1 #define NULL 0 #define OVERFLOW -2 #define ElemType int #define Status... ...
分类:
其他好文 时间:
2017-02-24 23:50:13
阅读次数:
232
DanceLink是一个可以解决精确覆盖和重复覆盖的搜索算法 重复覆盖就是在精确覆盖的remove等处做改变 都是十字循环链表 精确覆盖 给出一个01矩阵 要求选择几行 使每一列都有且仅有一个1 在求所得行尽量小的视乎 f()函数可以进行一个剪枝 可以用来解决数独 并且速度很快 本质还是搜索 但是由 ...
分类:
其他好文 时间:
2017-02-12 20:15:51
阅读次数:
169
我们构造一个循环链表来表示排成圆圈的人。每个人的链接指向圆圈内在他左边的人。正数i表示圆圈内的第i个人。已知n个人(以编号1,2,3...n分别表示)围坐在一张圆桌周围。从编号为k的人开始报数,数到m的那个人出列;他的下一个人又从1开始报数,数到m的那个人又出列;依此规律重复下去,直到圆桌周围的人全 ...
分类:
其他好文 时间:
2017-01-30 10:31:47
阅读次数:
190
首先是单链表(带附加表头),实现类代码如下: 测试代码如下: 小结: 一.单链表与顺序表相比: 1.顺序表可以方便的随机存取表中的任一节点,速度快;但是在表中插入删除一个数据时,为了保持其他元素的相对次序不变,平均需要移动一半的元素,效率很低;还有若事先对表长估计不足,过小会形成内存浪费,过大则需要 ...
分类:
编程语言 时间:
2017-01-15 18:15:10
阅读次数:
294
一,循环链表的概念 1.什么是循环链表 所谓的循环链表就是让单向链表的首尾相连,组成一个环状。 2.循环链表的典型应用 约瑟夫环问题。 3.实现循环链表的重点 1,循环链表在插入第一个元素的时候,需要我们将第一元素的指针域指向其自身,也就构成了循环链表。 2,循环链表基于单向链表而生,单是比循环链表 ...
分类:
其他好文 时间:
2017-01-07 08:15:18
阅读次数:
227
线性表是最简单的线性结构,线性表的主要操作特点是可以在任意位置插入和删除一个数据元素。 线性表可以用顺序存储结构和链式存储结构存储。 用顺序存储结构事先的线性表称为顺序表,用链式存储结构存储的称为链表。 线性表的抽象数据类型主要包括两个方面:即数据集合和该数据集合上的操作集合。 1、数据集合 Dat ...
分类:
其他好文 时间:
2016-12-30 09:28:53
阅读次数:
140
什么是链表?链表是一种重要的数据结构,它最大的优点是可以进行动态的存储分配。链表有单向链表,双向链表,循环链表。对于c,这里我们只讨论单向链表。我们知道,内存是由栈和堆组成的。栈空间是由操作系统和编译系统控制的,比如我们定义int a;这个a就是在栈中开辟内存单元的。而堆空间,则允许给用户提供了虚拟 ...
分类:
其他好文 时间:
2016-12-19 11:10:57
阅读次数:
239