数据库程序设计C++

来源:百度知道 编辑:UC知道 时间:2024/05/07 21:35:03
一、设计一个静态链表(或成为数组链表),该链表储存的数据类型为string,请实现以下的功能。

public:
List();//构造函数
int size() const; //返回链表的长度
bool full() const; //返回链表是否已满
bool empty() const; //返回链表是否已空
void clear(); //清空链表
int retrieve( int position, string &x ) const;//获取链表第position位置的元素到x,成功返回0,否则返回-1
int replace( int position, const string &x );//将链表第position位置的元素换为x,成功返回0,否则返回-1
int remove( int position, string &x );//获取并删除链表第position位置的元素,成功返回0,否则返回-1
int insert( int position, const string &x );//将元素x插入到链表第position位置,成功返回0,否则返回-1
protected:
int new_node(); //返回链表的数据载体(数组)的可用index,如果链表已满则返回-1
void delete_node( int index); //删除链表数据载体(数组)index位置的元素
int current_position( int index) const;//返回链表数据载体(数组)index位置的元素是链表的哪个位置,如果当前位置没有存放数据,则返回-1
int set_position( int position) const;//返回链表第position位置的数据所存放的数组index,如果不存在position位置,则返回-1

哪位高手帮助一下 必高分重谢
不一定要管不写出、相类似的函数可以只写一个 另外的简单提示就好

#include <string>
using namespace std;

class List
{
public:
string *strList;
int iListLong;
int iListUseNum;

List();//构造函数
int size() const; //返回链表的长度
bool full() const; //返回链表是否已满
bool empty() const; //返回链表是否已空
void clear(); //清空链表
int retrieve( int position, string &x ) const;//获取链表第position位置的元素到x,成功返回0,否则返回-1
// int replace( int position, const string &x );//将链表第position位置的元素换为x,成功返回0,否则返回-1
// int remove( int position, string &x );//获取并删除链表第position位置的元素,成功返回0,否则返回-1
// int insert( int position, const string &x );//将元素x插入到链表第position位置,成功返回0,否则返回-1
protected:
int new_node(); //返回链表的数据载体(数组)的可用index,如果链表已满则返回-1
// void delete_node( int index); //删除链表数据载体(数组)index位置的元素
// int current_position( int index) const;//返回链表数据载体(数组)index位置的元素是链表的哪个位置,如果当前位置没有存放数据,则返回-1
// int set_position( int position) const;//返回链表第position位置的数据所存放的