靜態鍊錶的應用

2021-05-25 23:35:19 字數 838 閱讀 2985

#include

#include

typedef struct

list;

typedef struct

link;

void init(link *l)

int assign(link l)

void freenode(link l,int pos)

void insert(link *l,int i,int e)

void delete(link *l,int i,int *e)

void print(link l,int n)

printf("/n");

}void main()

;len=sizeof(b)/sizeof(b[0]);

init(&l);

for(i=1;i<=len;i++)

insert(&l,i,b[i-1]);

printf("靜態鍊錶中的元素為:/n");

print(l,len);

printf("輸入要插入的元素及位置/n");

scanf("%d%d",&e,&pos);

insert(&l,pos,e);

printf("插入元素後靜態鍊錶中的元素為/n");

print(l,len+1);

printf("輸入要刪除的位置/n");

scanf("%d",&pos);

delete(&l,pos,&e);

printf("刪除的元素是");

printf("%d/n",e);

printf("刪除後鍊錶元素為");

print(l,len);

}

靜態鍊錶(陣列 鍊錶和靜態鍊錶的操作)

因為是線性表,不能只講鍊錶,所以今天提一下靜態鍊錶以及陣列 鍊錶 靜態鍊錶之間的對比。陣列基本結構沒得說,插入和刪除的操作也是有的 雖然看著不比較詭異 一般是動態分配乙個足夠長的,記錄有多少個元素後對這個個數進行加減,而不是每插入乙個就動態分配 其實這樣也行,要是不怕麻煩的話 另外在插入刪除操作之後...

鍊錶學習 靜態鍊錶

struct linknode 鍊錶在指定位置插入與刪除元素不需要移動元素,只需要修改指標即可,而陣列刪除與加入元素則需要移動後面的元素,鍊錶相對於陣列來講,則多了指標域空間開銷,拿到鍊錶第乙個節點就相當於拿到整個鍊錶 鍊錶的分類 靜態鍊錶,動態鍊錶 單向鍊錶,雙向鍊錶,迴圈鍊錶,單向迴圈鍊錶,雙向...

靜態鍊錶的總結

1.靜態鍊錶的定義 用陣列描述的鍊錶就叫做靜態鍊錶 2.為什麼有靜態鍊錶 因為有些高階語言沒有向c語言的指標,有人想出來用陣列來代替指標,來描述單鏈表。3.怎樣定義靜態鍊錶 typedef struct componet,staticlinklist maxsize 靜態鍊錶最基本的兩部分就是 第一...