병합 할 때 a와 b 데이터의 크기를 비교해서 새로은 c연결리스트에 노드를 가져와 추가한다. 그리고 다른 노드를 한 칸 씩 전진한다.
그리고 노드 중 하나가 널에 도달하면 다른 노드의 잔여항을 while을 통해 c연결리스트에 연결한다.


Node* Merge_List(Node* head_a, Node* head_b) {
Node* head_c = NULL;
while (head_a != NULL && head_b != NULL)
{
if (head_a->data < head_b->data) {
Append_Node(&head_c, Create_Node(head_a->data));
head_a = head_a->link;
}
else
{
Append_Node(&head_c, Create_Node(head_b->data));
head_b = head_b->link;
}
}
while (head_a != NULL)
{
Append_Node(&head_c, Create_Node(head_a->data));
head_a = head_a->link;
}
while (head_b != NULL)
{
Append_Node(&head_c, Create_Node(head_b->data));
head_b = head_b->link;
}
return head_c;
}

이번 과제는 오름차순으로 노드를 추가하는 것이다. 예전에 Ploy_add 함수를 만들 때 처럼 서로 값을 비교해서 크면 넣어주는 식으로 진행하였더니 어렵지 않았다. 특히 잔여항을 넣어주는 부분만 조심만 했다면 크게 어렵지 않은 과제 였던거 같다.