题目的意思是给定一个链表的头指针,快速判断一个链表是不是有环,如果有环,返回环的起始位置。该题的经典做法是使用两个指针,两个指针均指向头结点,其中一个是快指针,一次走两步;另一个是慢指针,一次只走一步,当两个指针相遇时,证明有环。...
分类:
其他好文 时间:
2015-09-17 13:40:56
阅读次数:
166
简单题,题目要求显然是很多次插入,所以是链表。acm里链表出场率并不高,但是实际应用中还是蛮多的。想想一年前这个时候连c语言都不会,真是感慨。。。插入两个语句,nxt[i] = nxt[u] 表示 i结点指向u的后继, nxt[u] = i表示把u的后继设成i。设置一个头结点,指向一个不存在的结点,...
分类:
其他好文 时间:
2015-09-08 00:21:10
阅读次数:
142
邻接表是图的一种最主要存储结构,用来描述图上的每一个点。参见http://baike.baidu.com/view/549594.htm再给你看一下数据结构的课件解释第二个图是个标准的邻接表实例 右上角是图,共有5个点,v1到v5按照每个点来建立单链表组成邻接表。首先 以v1作为头结点,和v1相邻的...
分类:
其他好文 时间:
2015-09-06 18:11:16
阅读次数:
211
链表排序讲解:head指针指向链表的头结点,是找到整个链表的唯一依据,如果head指针丢失,整个链表就找不到了。head存储的是第一个节点的地址,head->next存储的是第二个节点的地址; 任意一个节点p的地址,只能通过它前一个节点的next来求得。单向链表的选择排序图示: ---->[1]--...
分类:
编程语言 时间:
2015-09-03 14:02:22
阅读次数:
186
因为每个树都有一个头结点。头结点下面是4个子结点,然后每个子结点又有4个子节点。例如一个2层的四叉树,就会有5个结点,但头结点并不能计算进去。他的4个子节点下面接的都是空指针,可以得出空指针的个数为4*4=16个。对于含有N个结点的树,除了头结点外还有N-1个结点,每一个节点都有一条线连接到上一层(...
分类:
其他好文 时间:
2015-08-31 21:03:38
阅读次数:
1581
题目如图:1.把要删除pToBeDeleted的节点的后面节点覆盖点要删除的节点pToBeDeleted2.要考虑如果删除的节点是最后一个节点怎么办3.要考虑如果总共只有一个节点,删除的是头结点或者说是尾节点怎么办———————————————————————————————————函数指针的用法,...
分类:
编程语言 时间:
2015-08-30 12:41:25
阅读次数:
152
#ifndef _SEQLIST_
#define _SEQLIST_
#include
using namespace std;
#include
template class Slist;
//节点类
template
class Node
{
public:
Node() :data(Type()), next(NULL){}
Node(Type d, Node *n = NULL...
分类:
编程语言 时间:
2015-08-29 09:47:19
阅读次数:
236
所实现的单链表的结构如下图所示:
循环单链表的实现,和上一篇文章单链表的实现大致相同点击打开链接,略有区别:
1:循环判断的条件不再是s == NULL或者s->next == NULL,而是他们是否等于头指针。2: 断开链表时的处理,尾节点的next不是NULL,而是指向头结点
具体细节参考上一篇文章
头文件:SCList.h
#ifndef SCLIST_H
#define...
分类:
编程语言 时间:
2015-08-21 21:34:32
阅读次数:
312
所实现的双链表的结构如下图所示:
双链表的实现,和第一篇文章单链表的实现大致相同点击打开链接
本篇文章在构建节点的同时,初始化构建节点的前驱和后继,具体细节参考下列代码
头文件:DList.h
#ifndef DLIST_H_
#define DLIST_H_
typedef enum{FALSE,TRUE}Status;
#include
#include
using na...
分类:
编程语言 时间:
2015-08-21 21:33:09
阅读次数:
308
所实现的单链表的结构如下图所示:
头文件:SList.h
#include
#include
using namespace std;
typedef enum{FALSE,TRUE}Status;
template
class List;
template
class ListNode
{
friend class List; //友元类可以访问该类的成员
private...
分类:
编程语言 时间:
2015-08-21 11:21:47
阅读次数:
245