資料結構實驗之鍊表五 單鏈表的拆分

2021-08-09 12:02:08 字數 1181 閱讀 6303

problem description

輸入n個整數順序建立乙個單鏈表,將該單鏈表拆分成兩個子鍊錶,第乙個子鍊錶存放了所有的偶數,第二個子鍊錶存放了所有的奇數。兩個子煉表中資料的相對次序與原鍊錶一致。

input

第一行輸入整數n;;

第二行依次輸入n個整數。

output

第一行分別輸出偶數鍊錶與奇數鍊錶的元素個數; 

第二行依次輸出偶數子鍊錶的所有資料;

第三行依次輸出奇數子鍊錶的所有資料。

example input

10

1 3 22 8 15 999 9 44 6 1001

example output

4 6

22 8 44 6

1 3 15 999 9 1001

hint

不得使用陣列!

#include#include#include#define error -1

#define overflow -2

#define ok 1

typedef int elemtype;

typedef int statu;

typedef struct lnode

link;

link * creat(int n);

link * negative(link *head);

statu dis_link(link *head);

statu split(link *head);

int main()

link *creat(int n)

return head;

}link * negative(link *head)

}return head;

}statu dis_link(link *head)

printf("%d\n", p -> data);

return ok;

}statu split(link *head)

else

r = r -> next;

}printf("%d %d\n", k, j);

dis_link(head2);

dis_link(head1);

return ok;

}

資料結構實驗之鍊表五 單鏈表的拆分

time limit 1000ms memory limit 65536k 輸入n個整數順序建立乙個單鏈表,將該單鏈表拆分成兩個子鍊錶,第乙個子鍊錶存放了所有的偶數,第二個子鍊錶存放了所有的奇數。兩個子煉表中資料的相對次序與原鍊錶一致。第一行輸入整數n 第二行依次輸入n個整數。第一行分別輸出偶數鍊錶...

資料結構實驗之鍊表五 單鏈表的拆分

輸入n個整數順序建立乙個單鏈表,將該單鏈表拆分成兩個子鍊錶,第乙個子鍊錶存放了所有的偶數,第二個子鍊錶存放了所有的奇數。兩個子煉表中資料的相對次序與原鍊錶一致。第一行輸入整數n 第二行依次輸入n個整數。第一行分別輸出偶數鍊錶與奇數鍊錶的元素個數 第二行依次輸出偶數子鍊錶的所有資料 第三行依次輸出奇數...

資料結構實驗之鍊表五 單鏈表的拆分

time limit 1000ms memory limit 65536k 有疑問?點這裡 輸入n個整數順序建立乙個單鏈表,將該單鏈表拆分成兩個子鍊錶,第乙個子鍊錶存放了所有的偶數,第二個子鍊錶存放了所有的奇數。兩個子煉表中資料的相對次序與原鍊錶一致。第一行輸入整數n 第二行依次輸入n個整數。第一行...