⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 base.h

📁 各种内部排序算法的实现和比较
💻 H
字号:
#include "iostream.h"
#include "iomanip.h"
#include "string.h"
#include "math.h"
#include "stdlib.h"

#define NUM 10
#define LT(a,b) ((a)<(b))
////////////////////// SqList存储结构 //////////////////////////////////////

#define MAXSIZE	50000		//顺序表最大长度

typedef int KeyType;		//关键字为整型
typedef struct{
	KeyType		key;		//关键字
//	InfoType	otherinfo	//其他数据项
}RedType;					//记录类型

typedef struct{
	RedType	*r;				//r[0]闲置或哨兵
	int		length;			//顺序表长度
}SqList;					//顺序表类型
/////////////////////////////////////////////////////////////////////////////

////////////////////////////// SLinkListType存储结构 ////////////////////////
#define SIZE	50000		//静态链表容量
//#define LT(a,b) ((a)<(b))

typedef int RcdType;		//关键字为整型

typedef struct{
	RcdType		rc;			//记录项
	int			next;		//指针项
}SLNode;					//表节点类型

typedef struct{
	SLNode	*r;				//0号单元为表头节点
	int		length;			//链表当前长度
}SLinkListType;				//静态链表类型
/////////////////////////////////////////////////////////////////////////////

///////////////////////////// 堆排序存储结构 ////////////////////////////////
typedef SqList HeapType;	//与顺序表L相同

/////////////////////////////////////////////////////////////////////////////

///////////////////////////// 基数排序存储结构 //////////////////////////////
#define MAX_NUM_OF_KEY	8				//关键字项数的最大值
#define RADIX			10				//关键字基数,此时是十进制整数的基数
#define MAX_SPACE		50000			//静态链表容量

typedef char KeysType;
typedef struct{
	KeysType keys[MAX_NUM_OF_KEY];		//关键字
//	InfoType otheritems;				//其它数据项
	int next;
}SLCell;								//静态链表的结点类型

typedef struct
{
	SLCell *r;				//静态链表的可利用空间,r[0]为头结点
	int keynum;							//记录的当前关键字个数
	int recnum;							//静态链表的当前长度
}SLList;								//静态链表类型

typedef int ArrType[RADIX];				//指针数组类型

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -