天天看點

線性表基本操作(沒實作)

#include <stdio.h>

#define MAXSIZE 100

//動态的線性表  表的長度可變 所需最大存儲空間随問題不同而不同 

#define LIST_INIT_SIZE 100
#define LISTINCREMENT 10
typedef struct {
	int *data;
	int length;
	int listsize;
}SqList;   
  //listsize為目前配置設定空間的大小 如果因插入元素而空間不足,可進行再配置設定,為順序表增加一個大小為LISTINCREMENT個資料元素的空間 


//靜态的線性表  已知表的長度 

typedef struct {
	int data[MAXSIZE];
	int length;
}SeqList;

void InitList(SeqList &l);
void DestroyList(SeqList &l);
void ClearList(SeqList &l);
int ListEmpty(SeqList l);  //判斷是否為空表 是則傳回1  否則傳回0 
int ListLenght(SeqList l);
int GetElem(SeqList l,int i);  //傳回第i個元素的值
int Locate(SeqList l,int e,compare());  //找到傳回序号  找不到傳回0
void PriorElem(SeqList l,int cur_e,int &pre_e);  //用pre_e傳回位址 前一個元素的位址 
void NextElem(SeqList l,int cur_e,int &next_e);   // 
void ListInsert(SeqList &l,int i,int e);  //在第i個位置插入e 
void ListDelete(SeqList &l,int i,int &e);  //删除第i個位置的元素  用e傳回值 
void ListTraverse(SeqList l,visit());   //依次通路每一個元素
 
int main(){
	return 0;
}
           

繼續閱讀