習題2 4 遞增的整數序列鍊錶的插入 15 分

2021-10-01 04:33:00 字數 1372 閱讀 3852

本題要求實現乙個函式,在遞增的整數序列鍊錶(帶頭結點)中插入乙個新整數,並保持該序列的有序性。

list insert( list l, elementtype x );
其中list結構定義如下:

typedef struct node *ptrtonode;

struct node ;

typedef ptrtonode list; /* 定義單鏈表型別 */

l是給定的帶頭結點的單鏈表,其結點儲存的資料是遞增有序的;函式insert要將x插入l,並保持該序列的有序性,返回插入後的煉表頭指標。

#include #include typedef int elementtype;

typedef struct node *ptrtonode;

struct node ;

typedef ptrtonode list;

list read(); /* 細節在此不表 */

void print( list l ); /* 細節在此不表 */

list insert( list l, elementtype x );

int main()

/* 你的**將被嵌在這裡 */

5

1 2 4 5 6

3

1 2 3 4 5 6
list insert( list l, elementtype x )

list tmp = (list)malloc(sizeof(struct node));

list pre,p;

tmp->data = x;

if( l->next == null )

tmp->next = l->next;

l->next = tmp;

else

p = l;

pre = l;

while( x > p->data && p->next != null )

pre = p;

p = p->next;

if( p->next != null)

tmp->next = pre->next;

pre->next = tmp;

else if( p->next == null )

tmp->next = p->next;

p->next = tmp;

return l;

這個題目非常的容易就不多做解釋了,主要是複習一下c裡面鍊錶的一些基本操作。

習題2 4 遞增的整數序列鍊錶的插入 15 分

本題要求實現乙個函式,在遞增的整數序列鍊錶 帶頭結點 中插入乙個新整數,並保持該序列的有序性。list insert list l,elementtype x 其中list結構定義如下 typedef struct node ptrtonode struct node typedef ptrtono...

遞增的整數序列鍊錶的插入

遞增的整數序列鍊錶的插入 本題要求實現乙個函式,在遞增的整數序列鍊錶 帶頭結點 中插入乙個新整數,並保持該序列的有序性。函式介面定義 list insert list l,elementtype x 其中list結構定義如下 typedef struct node ptrtonode struct ...

遞增的整數序列鍊錶的插入

本題要求實現乙個函式,在遞增的整數序列鍊錶 帶頭結點 中插入乙個新整數,並保持該序列的有序性。函式介面定義 list insert list l,elementtype x 其中list結構定義如下 typedef struct node ptrtonode struct node typedef ...