靜態鏈表C語言數據結構

靜態鏈表就是將數組實現單鏈表:數組

int Malloc_SLL(StaticLinkList space)
{
int i = space[0].cur;//取得第一個頭節點的下標
if( space[0].cur )
space[0].cur = space[i].cur;
   // 把它的第一個備用節點用來做爲備用。返回其索引,頭節點設置爲原來一個節點的下一個節點
return i;
}

  

/* 在靜態鏈表L中第i個元素以前插入新的數據元素e */spa

Status ListInsert( StaticLinkList L, int i, ElemType e )
{
int j, k, l;blog

k = MAX_SIZE - 1; // 數組的最後一個元素
if( i<1 || i>ListLength(L)+1 )
{
return ERROR;
}索引

j = Malloc_SLL(L);//首先是得到空閒份量的下標
if( j )
{
L[j].data = e;
for( l=1; l <= i-1; l++ )
{
k = L[k].cur;//這個就是不斷地將遊標做爲索引查詢下一個元素的遊標,一致查到了i-1個元素。
}
L[j].cur = L[k].cur;//先將空閒處j處的遊標指向上面獲得i-1的下一個元素。
L[k].cur = j;//將k的下表指向jclass

return OK;
}List

return ERROR;
}鏈表

相關文章
相關標籤/搜索