StaticList.h
#pragma once
const int MAXSIZE = 20;
class Node
{
public:
long data;
int cursor; //指向下一个元素的游标位置
};
class StaticList
{
public:
StaticList();
~StaticList();
bool isEmpty();
void appendHead(long elem);
void appendTail(long elem);
int getPos(long elem);
void deleteElem(long elem);
int remove(int pos);
void insertElem(int pos, long elem);
void printList();
int getLength() { return m_length; }
private:
Node m_list[MAXSIZE];
int m_length;
};
staticlist.cpp
#include "StaticList.h"
#include <limits>
#include <iostream>
using namespace std;
StaticList::StaticList()
:m_length(0)
{
for (int i = 0; i < MAXSIZE-1; ++i)
{
m_list[i].data = INT_MIN;
m_list[i].cursor = i + 1;
}
m_list[MAXSIZE - 1].data = INT_MIN;
m_list[MAXSIZE - 1].cursor = 0;
}
StaticList::~StaticList()
{
}
bool StaticList::isEmpty()
{
if (m_length <= 0)
return true;
return false;
}
voi

本文档介绍了如何使用C++编程语言实现静态链表的数据结构。包含StaticList头文件、静态链表的实现文件staticlist.cpp以及用于测试的main.cpp代码示例。
最低0.47元/天 解锁文章
2861

被折叠的 条评论
为什么被折叠?



