C語言線性表的實現

2021-07-04 18:39:54 字數 1488 閱讀 6207

#define ok 1

#define error 0

#define true 1

#define false 0

#include

#include

/*線性鍊錶的實現

adt 線性表(list)

data

operation

creatlist(*l); 初始化操作,建立乙個空的線性鍊錶l。

listempty(l); 若線性鍊錶l為空,返回true, 否則返回false。

clearlist(*l); 將線性表l清空

getelem(l, i, e); 將線性表l中的第i個元素值返回給e。

dellist(*l, i, *e); 刪除線性表l中的第i個元素,並用e返回其值。

listlength(l); 返回線性表l的長度。

print(l); 列印線性表l的全部元素。

*/typedef

struct node //鍊錶資料結構

node, *linklist;

int creatlist(linklist *l, int n)

r->next = null;

}int listempty(linklist l)

int clearlist(linklist *l)

(*l)->next = null;

return ok;

}int insertnode(linklist *l, int i, int e)

if(!p || j>i)

return error;

s = (node *)malloc(sizeof(node));

s->data = e;

s->next = p->next;

p->next = s;

return ok;

}int getelem(linklist l, int i)

if(!p || j>i)

return error;

m = p->data;

printf("%d", m);

return ok;

}int delnode(linklist *l, int i, int *e)

if(!(p->next) || j>i)

return error;

r = p->next;

p->next = r->next;

*e = r->data;

free(r);

return ok;

}int print(linklist l)

}int locateelem(linklist l, int e, int *count)

return false;

}int listlength(linklist l, int *count)

return ok;

}int main()

線性表c語言實現

lineartable.h pragma once 線性表的實現 define maxsize 20 define ok 1 define error 2 typedef struct list list t 線性表初始化 void initlist list t list 根據下表查詢資料 int...

C語言實現線性表

include include define maxsize 100 定義線性表最大長度 定義順序表 typedef struct seqlist 初始化順序表 void initlist seqlist l 建立順序表 intcreatlist seqlist l,int a,int n for ...

線性表 C語言完整實現

include define false 0 define true 1 define maxsize 20 typedef int bool typedef int elementtype struct listnode typedef struct listnode list typedef s...