//靜態分配陣列
#include
#include
#define maxsize 100
struct sqlistnode
;typedef
struct sqlistnode *list;
list creat()
return l;
}void
insert
(list l,
char x,
int i)
else
if(i<
1||i>
(l->last)+2
)else
l->last++
; l-
>data[i-1]
=x;printf
("success\n");
}}void
output
(list l)
intmain()
//動態分配陣列
struct seqlist
;typedef
struct seqlist *list;
list l=
(list)
malloc
(struct seqlist)
;l->data=
(int
)malloc
(sizeof
(int
)*initsize)
灰常不容易啊找了好久bug!!!求length的時候cnt要++,p也要++啊!!!死在這個bug上了 還有刪除節點時,第乙個節點要注意!!!
#include
#include
typedef
struct node *list;
struct node
;list creat1()
}return head;
}list creat2()
} r-
>next=
null
;return head;
}int
length
(list l)
return num;
}list findkth
(list l,
int k)
//查詢位序為i
if(p)
return p;
//此處返回的是指標,,也可以返回值p->data
else
return
null;}
list find
(list l,
int x)
//查詢值為x
if(p-
>data==x)
return p;
else
return
null;}
list insert
(list l,
int x,
int i)
//位置i處插入x
else
}list delete0
(list l,
int i)
//刪除位序i的元素 或者根據元素刪...種類好多啊
else
//關鍵容易bug的地方 當i取1時要分開考慮,讓2號位接到head後面
else
if(i==1)
}return l;
}void
output
(list l)
printf
("\n");
}int
main()
做乙個鍊錶複習集合吧》<
typedef
struct node *ptrtonode;
//指向鍊錶的指標
typedef
struct node list;
//通常所說的「給定乙個單鏈表」,表示給定乙個指向鍊錶頭部的指標
struct node
;
本題要求實現乙個函式,求單鏈表l結點的階乘和。這裡預設所有結點的值非負,且題目保證結果在int範圍內。
輸入樣例:
35 3 6
輸出樣例:
846
#include
#include
typedef
struct node *ptrtonode;
struct node
;typedef ptrtonode list;
/* 定義單鏈表型別 */
intfactorialsum
( list l )
;int
main()
printf
("%d\n"
,factorialsum
(l))
;return0;
}int
factorialsum
( list l )
return sum0;
}
線性表的鏈式儲存實現
#include
typedef
struct lnode ptrtonode;
typedef
struct ptrtonode list;
struct lnode
;int
findkth
(list l,
int k)
if(i==k&&p)
return p->data;
else
return error;
}int
findk
(list l,
int k)
if(k==p->data)
return i;
else
return error;
}list insert
(list l,
int k,
int data)
;//插入操作,返回的是煉表頭
if(cnt!=k-1)
*/if(k==1)
else
}
int
binarysearch
( list l,
int x )}if
(flag==0)
return notfound
}
資料結構(線性表)
1.試寫一演算法,在無頭結點的動態單鏈表上實現線性表操作insert l,i,b 並和在帶頭結點的動態單鏈表上實現相同操作的演算法進行比較。status insert linklist l,int i,int b 在無頭結點鍊錶l的第 i個元素之前插入元素 belse insert 2.已知線性表中...
資料結構 線性表
參考 一 線性表 順序表 單鏈表 迴圈鍊錶 雙鏈表 順序表 1.表的初始化 void initlist seqlist l 2.求表長 int listlength seqlist l 3.取表中第i個結點 datatype getnode l,i 4.查詢值為x的結點 5.插入 具體演算法描述 v...
資料結構 線性表
線性表是最基礎的一種資料結構,這樣的資料物件包含的資料元素具有一對一的前驅後繼關係。按其邏輯儲存方式的不同可分為兩類線性表 順序表和鏈式表。其中鏈式表又可分為線性鍊錶 迴圈鍊錶和雙向鍊錶。下面分別介紹下這幾種線性表的資料結構 1.順序表 typedef struct sqlist 插入演算法 i到n...