c++ 中 线性表(急!)

来源:百度知道 编辑:UC知道 时间:2024/06/02 12:50:50
请教各位前辈:以下是我写的线性表,但是运行时输入数据敲回车会出现内存不能为read错误,请各位批评指正!谢谢各位了!
#include "stdafx.h"
#include <iostream>
using namespace std;
class LinkNode
{
public:
int data;
LinkNode * next;
LinkNode(int d,LinkNode * n)
{
data=d;
next=n;
}
void InsertAfter(LinkNode * p)
{
p->next=next;
next=p;
}
};
class LinkTable
{
private:
LinkNode * header;
int count;
public:
LinkTable(int data,LinkNode * linknode)
{
LinkNode * temp=GetNode(data,linknode);
InsertAfter(temp);
}
LinkNode * GetNode(int data,LinkNode * linknode=NULL)
{
LinkNode * newNode;
newNode=new LinkNode(data,linknode);
if(newNode==NULL)
{
cerr<<"Memory allocation failure"<<endl;
exit(1);
}
return newNode;

}
void In

//根据你的思路写的线性表.
//其它功能你可能自己补充
#include <iostream>
using namespace std;
class LinkNode
{
public:
int data;
int index;
LinkNode * next;
LinkNode(int d,LinkNode * n, int index)
{
data=d;
next=n;
this->index = index;
}
};
class LinkTable
{
private:
LinkNode * header;
int count;
public:
LinkTable(int data)
{
this->header = new LinkNode(data, NULL, 0);
count = 1;
}
//从最后增加元素
void PushBack(int data)
{
LinkNode * temp=header;
while(temp->next!=NULL)
{
temp=temp->next;
}
temp->next = new LinkNode(data, NULL, temp->index+1);
count++;
}
//从开头增加无素
void PushFront(int data)
{
this->InsertFront(data, 0);
}
//从索引出增加元素
bool InsertAfter(int data, int index)
{
if (index &g