線性表c語言實現

2021-10-02 05:17:44 字數 2418 閱讀 4655

lineartable.h

#pragma once

//線性表的實現

#define maxsize 20

#define ok -1

#define error -2

typedef

struct list list_t;

//線性表初始化

void

initlist

(list_t *list)

;//根據下表查詢資料

intgetelem

(list_t *list,

int i)

;//根據資料查詢下標

intgetid

(list_t *list,

int e)

;//獲取線性表長度

intgetlen

(list_t *list)

;//頭插法

intaddtohead

(list_t *list,

int e)

;//尾插法

intaddtotail

(list_t *list,

int e)

;//指定位置插入

intaddspecific

(list_t* list,

int i,

int e)

;//刪除指定下標元素

intdelelembyid

(list_t *list,

int i)

;//刪除指定元素

intdelelem

(list_t *list,

int e)

;//清空線性表

void

clearlist

(list_t *list)

;//列印資訊

void

show

(list_t *list)

;

lineartable.c

#include

"lineartable.h"

#include

//線性表初始化

void

initlist

(list_t* list)

list->len =0;

}//根據下表查詢資料

intgetelem

(list_t* list,

int i)

return list->data[i];}

//根據資料查詢下標

intgetid

(list_t* list,

int e)

}return error;

}//獲取線性表長度

intgetlen

(list_t* list)

//頭插法

intaddtohead

(list_t* list,

int e)

list->data[0]

= e;

list->len +=1

;return ok;

}return error;

}//尾插法

intaddtotail

(list_t* list,

int e)

return error;

}//指定位置插入

intaddspecific

(list_t* list,

int i,

int e)

for(

int count = list->len; count >= i;

--count)

list->data[i]

= e;

++list->len;

return ok;

}//刪除指定下標元素

intdelelembyid

(list_t* list,

int i)

for(

int count = i; count < list->len;

++count)

--list->len;

return ok;

}//刪除指定元素

intdelelem

(list_t* list,

int e)

--list->len;

break;}

}return ok;

}//清空線性表

void

clearlist

(list_t* list)

list->len =0;

return ok;

}//列印資訊

void

show

(list_t* list)

printf

("\n");

}

C語言實現線性表

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

線性表C語言實現 除錯

我最近在用c作為入門資料結構的程式語言,使用教材是 大話資料結構 稍微比清華嚴蔚敏寫的易讀。就是有些例子舉的過於通俗了,可以略微刪減一些 或一大段 下面 會把我寫的和書裡寫的對比出來。初學感覺個人程式魯棒性不夠。聽說此書 保持嚴蔚敏 有一些問題。初學者沒看出來。望大家指出。1.線性表linear 定...

線性表 c語言實現(2)

有些方法在上篇 這裡只對 compare locateelem mergelist insrandlinst 和更新的main 作說明。1比較兩個元素是否相等 int compare int e1,int e2 else return0 int locateelem sqlist l,int e r...