有序顺序表的设计与实现

1、有序顺序表的设计(osqlist.h):设计头文件osqlist.h,其内容如下:
①类型设计
②基本操作的设计(包括初始化、插入、删除、索引、遍历等)
2、设计文件c.h,提供比较和遍历时的操作函数及有序表的有序规则(递增还是递减)
3、测试:设计测试文件application.cpp文件,验证所设计的有序顺序表的正确性。其内容如下:
设计一个主函数。
1、osqlist.h文件

#include "c.h"
#include <stdlib.h>
#define LISTSIZE 20
#define INCREMENT 5
//设计有序顺序表
//1:顺序表数据类型定义
struct sqlist {
   
	elemtype *elem;
	int length;
	int listsize;
};
//2:设计函数(对顺序表进行操作)
//2.1 初始化顺序表
void initList(sqlist &L) {
   
	L.elem = new elemtype[LISTSIZE];
	L.length = 0;
	L.listsize = LISTSIZE;
}
//2.2 插入:插入数据元素e,使有序表仍旧有序,其中comp指针所指函数决定递增还是递减有序
void listInsert(sqlist &L, elemtype e,bool (*comp)(elemtype,elemtype)) {
   
	//补充完整
	if (L.length >= L.listsize) {
   
		elemtype *newbase;
		newbase = (elemtype *) realloc(L.elem,
				sizeof(elemtype) * (L.listsize + INCREMENT));
		if (newbase != NULL) {
   
			L.elem = newbase;
			L.listsize += INCREMENT
  • 5
    点赞
  • 34
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值