順序表是我們資料結構中的基本儲存形式,現在給定乙個順序表,有如下操作:
insert x y:在順序表中x位置插入y元素,遍歷輸出當前順序表的所有元素。
delete x:刪除順序表中的x元素,如果有多個x元素,只刪除第乙個x,遍歷輸出當前順序的所有元素。
locate x:輸出順序表中x元素的所在的位置,如果有多個x元素,只輸出第乙個x元素的位置。
getelem x:輸出順序表中x位置上的元素。
**如下:
#include#include#includetypedef struct node //定義乙個結構體
node, *lk;
void init(lk *l) //定義乙個煉表頭節點
void creat(lk l,int n) //建立乙個鍊錶
}void insert(lk l,int n, int m) //insert x y:在順序表中x位置插入y元素,遍歷輸出當前順序表的所有元素。
q = (lk)malloc(sizeof(node));
q->data = m;
q->next = p->next;
p->next = q;
}void show(lk l) //列印鍊錶
else
p = p->next;
}printf("\n");
}int getelem(lk l, int n) //getelem x:輸出順序表中x位置上的元素。
return l->data;
}int delete (lk l, int n) //delete x:刪除順序表中的x元素,如果有多個x元素,只刪除第乙個x,遍歷輸出當前順序的所有元素。
else
}return i;
}int locate(lk l,int n) locate x:輸出順序表中x元素的所在的位置,如果有多個x元素,只輸出第乙個x元素的位置。
} return q;
}int main()
else
}else if(a[0] == 'd')
else
}else if(a[0] == 'l')
else
}else if(a[0] == 'g')
else
}else
} return 0;
}
結果展示:
C語言 鍊錶中刪除節點
錯誤示範 struct node delnode struct node head,int x struct node p head struct node pre null int find 0 while p null pre p pre記錄目標節點的前乙個 p p next if find 0...
單向鍊錶實現 插入節點 刪除節點操作
function node element 該類的功能包括插入刪除節點 在列表中查詢給定的值。function llist 插入新節點 向鍊錶中插入乙個節點,需要修改它前面的節點 前驅 使其指向新加入的節點,而新加入的節點則指向原來前驅指向的節點 find方法 遍歷鍊錶,查詢給定資料。如果找到資料,...
C語言靜態鍊錶(指定節點的前後插入新節點與刪除)
靜態鍊錶相對動態鍊錶,基於你指標和結構體,記憶體有清晰的認識的情況下 比較簡單,下面是小生的練習 提供給大家。include include struct test void prinlink struct test head int main struct test t2 struct test ...