#include//定义结构体struct Student{int num;float score;struct Student *next;};int main(){struct Student a,b,c,*head,*p;a.num=101;a.score=89;b.num=102;b.sco...
分类:
其他好文 时间:
2015-09-11 19:02:22
阅读次数:
150
#define TRUE 1#define FALSE 0#define OK 1#define ERROR 0#define INFEASIBLE -1#define MYOVERFLOW -2#define MAXSIZE 1000//链表的最大长度typedef int Status;type...
分类:
其他好文 时间:
2015-09-09 21:24:58
阅读次数:
191
#ifndef __STATICLIST_
#define __STATICLIST_
#include
using namespace std;
#define MAXSIZE 8
#define ElemType int
typedef struct StaticListNode
{
ElemType data;
int cur;
}StaticListNode;
ty...
分类:
其他好文 时间:
2015-08-29 11:17:39
阅读次数:
158
静态链表要解决的问题是:如何静态模拟动态链表关于存储空间申请和释放,动态链表可以借助malloc和free两个函数实现。在静态链表中,由于操作的是数组,不存在像动态链表的节点申请和释放问题,因此我们得自己完成两个函数来模拟这两个动作。
解决办法:
将静态链表划分为“有效链表,备用链表”,通过两者模拟节点的申请和释放
静态链表:
1)有效链表(已经使用的数组元素按游标cur链接而成)...
分类:
编程语言 时间:
2015-08-27 15:15:52
阅读次数:
204
测试描述:建立一个简单的静态链表,它由3个学生数据的结点组成。输出各结点中的数据。
代码如下:
#include
using namespace std;
struct Student
{
int num;
float score;
Student *next;
};
int main()
{
Student a,b,c,*head,*p;//都是Studen...
分类:
其他好文 时间:
2015-07-24 10:52:57
阅读次数:
125
静态链表是使用数组实现的可以快速插入和删除数据的链表,静态链表和链式单链表比的缺点在于链表的长度只能初始化设置好,而相对应普通的顺序存储的链表,静态链表不能实现快速的读写任意的元素。
当然静态链表给了我们一种思考方式,当我们在特定状态下,不能使用指针操作时,我们可以使用一种替代指针的方法,静态链表使用的cur来表示当前节点的下一个节点的下标。
#pragma once
#define MAXS...
分类:
编程语言 时间:
2015-07-22 14:49:55
阅读次数:
126
静态链表的定义:
节点由一个一维数组和一个指针域组成,数组用来存放数据元素,而指针域里面的指针(又称游标)用来指向下一个节点的数组下标。这样的链表称之为静态链表。
链表中的数组第一个和最后一个位置需要特殊处理,不存数据。第一个位置(即数组0下标)的节点的指针用来存放备用链表的第一个节点的数组下标。最后一个位置(即数组长度MaxSize-1下标)的节点的指针用来存放指向有数值的第一个数据元素的数组...
分类:
编程语言 时间:
2015-07-19 18:05:09
阅读次数:
152
前言数据结构学习,发现坚持下来比较难,本次学习与上次学习间隔了几个月,不管怎样还是要强迫自己坚持下来。静态链表用数组模拟链式结构的线性表,对于没有指针的编程语言,只能使用这种方式来模拟。这是大师们想出来的实现方法,体会大师们的编程思路,站在大师们的肩膀上解决一个又一个的难题。每个节点包含一个游标(数...
分类:
其他好文 时间:
2015-07-12 20:20:08
阅读次数:
206
#include "string.h"#include "ctype.h"#include "stdio.h"#include "stdlib.h"#include "math.h"#include "time.h"#define OK 1#define ERROR 0#define TRUE 1#...
分类:
其他好文 时间:
2015-07-07 12:48:32
阅读次数:
205