pta資料結構(鍊錶)
本題要求實現乙個函式,將兩個鍊錶表示的遞增整數序列合併為乙個非遞減的整數序列。
函式介面定義:
list merge( list l1, list l2 );
其中list結構定義如下:
typedef struct node ptrtonode;
struct node ;
typedef ptrtonode list; / 定義單鏈表型別 */
l1和l2是給定的帶頭結點的單鏈表,其結點儲存的資料是遞增有序的;函式merge要將l1和l2合併為乙個非遞減的整數序列。應直接使用原序列中的結點,返回歸併後的帶頭結點的煉表頭指標。
裁判測試程式樣例:
#include
#include
typedef int elementtype;
typedef struct node *ptrtonode;
struct node ;
typedef ptrtonode list;
list read(); /* 細節在此不表 /
void print( list l ); / 細節在此不表;空煉表將輸出null */
list merge( list l1, list l2 );
int main()
/* 你的**將被嵌在這裡 */
輸入樣例:
31 3 5
52 4 6 8 10
輸出樣例:
1 2 3 4 5 6 8 10
null
null
list merge
( list l1, list l2 )
else
l=l->next;}if
(p) l->next=p;
if(q) l->next=q;
l1->next=
null
; l2->next=
null
;return l3;
}
資料結構 鍊錶PTA習題
6 3 建立學生資訊鍊錶 20分 6 4 學生成績煉表處理 20分 題號題目答案1 結點的單鏈表中,實現下列哪個操作,其演算法的時間複雜度是o n 遍歷鍊錶和求鍊錶的第i個結點 2對於乙個具有n個結點的單鏈表,在給定值為x的結點後插入乙個新結點的時間複雜度為 o n 3線性表若採用鏈式儲存結構時,要...
資料結構 PTA 鍊錶逆置 另類堆疊 函式 鍊錶
本題要求實現乙個函式,將給定單向鍊錶逆置,即表頭置為表尾,表尾置為表頭。鍊錶結點定義如下 struct listnode struct listnode reverse struct listnode head 其中head是使用者傳入的鍊錶的頭指標 函式reverse將鍊錶head逆置,並返回結果...
資料結構 鍊錶
鍊錶 what 就是一張鏈式儲存的表,是一種資料結構,是基礎,所以還是不要想有什麼用。具體呢?在c中就用結構體實現物件描述,然後通過函式來實現各個基本操作 c 則用類來表述,c中的結構體就可以看成c 中的類,然後通過類封裝各個操作步驟。這些操作實現後就需要 來測試,號稱demo,就是main函式裡面...