1樓:匿名使用者
hoho,其實很簡單啊,你一看就懂了,下面註釋加**^__struct node*head; /定正猛缺義表頭指標。 *node search(int key) /舉辯/按關鍵字key返回所在指標的搜尋函式search ok,明白否?^_
2樓:匿名使用者
你學的是資料結構吧??#include ""
#include
#include
#define error
#define overflow -1
using namespace std;
typedef int elemtype;
typedef struct lnode{elemtype data;
struct lnode *next;
lnode,*linklist;
int geelem_l(linklist l,int i){/l為帶頭結點的單連結串列的頭指標。
當第i個元素存在時,其值賦給e並返回ok,否則返回errorlnode *p;
int j,e;
p=l->next;j=1;//初始化,p指向滴乙個節點,j為計散碰脊數器。
while(p&&jnext;j++;
if(!p||j>i) cout<<"第i個元素不存在";/第i個元素不存在。
e=p->data; /取第i個元素。
return e;
衝滲/建立連結串列。
int m;
lnode *p,*q;
l=(linklist)malloc(sizeof(lnode));
if (!l) exit(overflow);
l->next=null;
q=l;cin>>m;
while(m!=0) /當m=0時,退出連結串列建立。
p=(linklist)malloc(sizeof(lnode));
if (!p) exit(overflow);
p->data=m;
p->next=null;
q->next=p;
q=p;cin>>m;
return(l);
int main()
linklist l;
int i;
cout<<"請輸入鏈吵慶表元素:";
create_linklist(l);
cout<<"請輸入需要查詢的元素位置:";
cin>>i;
cout<<"需要查詢的元素:"return 0;
看可以不??
用頭插法或尾插法建立帶頭節點的單連結串列。實現單連結串列上的插入刪除
typedef struct listalist void insert list h void del list h int main int flag list head list malloc sizeof list head next null while 1 用c語言實現 1 用頭插法 或...
在Java中如何實現雙向連結串列
雙向連結串列 就是有雙向指標,即雙向的鏈域。鏈結點的結構 data next previous 雙向連結串列不必是雙端連結串列 持有對最後一個鏈結點的引用 雙端連結串列插入時是雙向的。有兩條鏈 一條從頭到尾,一條從尾到頭,刪除遍歷時也是雙向的。雙向連結串列 public class doublyli...
高分求陣列模擬實現連結串列
樓主,你好,我是學c的,pascal的程式我是不能給你了!但是要說下陣列相比連結串列的好處還是可以說說的 首先,連結串列和陣列在屋裡儲存上就會有所不同,連結串列可以存在連續的實體地址上,也可以存在不連續的地址上,需要程式設計師自己開發地址,而陣列就不同了,只要定義了,編譯器就會自動的給你把空間開發出...