惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
爱范儿
爱范儿
博客园 - 三生石上(FineUI控件)
Vercel News
Vercel News
M
MIT News - Artificial intelligence
L
LangChain Blog
大猫的无限游戏
大猫的无限游戏
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
Microsoft Azure Blog
Microsoft Azure Blog
J
Java Code Geeks
Recent Announcements
Recent Announcements
Stack Overflow Blog
Stack Overflow Blog
人人都是产品经理
人人都是产品经理
IT之家
IT之家
F
Fortinet All Blogs
博客园 - 聂微东
U
Unit 42
Martin Fowler
Martin Fowler
腾讯CDC
博客园_首页
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
量子位
阮一峰的网络日志
阮一峰的网络日志
博客园 - Franky

博客园 - 咨询之路

Clustering 传统聚类分析(一) 英特尔的高效能管理法 英特尔公司 顺序查找和折半查找 常见算法复杂度 算法性能评价 数的群体分类 类的基本点(二) 类的基本点(一) 经典的统计保留字算法 C++语言中学思想(二) C++语言中学思想(一) 为什么数在内存中要以补码表示[ZZ] C语言中学思想(二) 事半功倍的麦肯锡工作方法[ZZ] 职场男人时尚服饰的选择 C语言中学思想(一) 哥特式建筑
基本顺序类表
咨询之路 · 2006-05-20 · via 博客园 - 咨询之路

#include <iostream.h>
#include <stdlib.h>

const int MaxListSize=50;

class SeqList
{
private:
DataType listitem[MaxListSize];
int size;
public:
SeqList(void);

int ListSize(void) const;
int ListEmpty(void) const;
int Find(DataType& item) const;
DataType GetData(int pos) const;

void Insert(const DataType& item);
void Delete(const DataType& item);
DataType DeleteFront(void);
void ClearList(void);
}

}

SeqList::SeqList(void):size(0)
{}

void SeqList::Insert(const DataType& item)
{
if(size+1>MaxListSize)
{
cerr<<"Maximum list size exceeded"<<endl;
exit(1);
}
listitem[size]=item;
size++;
}

void SeqList::Delete(const DataType& item)
{
int i=0;

while(i<size && !(item==listitem[i]))
{
i++;
}

if(i<size)
{
while(i<size-1)
{
listitem[i]=listitem[i+1];
i++;
}
}
size--;
}

DataType SeqList::GetData(int pos) const
{
if(pos<0||pos>=size)
{
cerr<<"pos is out of range!"<<endl;
exit(1);
}
return listitem[pos];
}

int SeqList::Find(DataType& item) const
{
int i=0;
if(ListEmpty())
return 0;

while(i<size&&!(item==listitem[i]))
i++;

if(i<size)
{
item=listitem[i];
return 1;
}
else
return 0;
}