//빈 head 객체를 만들고 그 헤드에 다음노드를 새로 만들어서 생성해준다.
//그러면서 그 다음 노드를 계속적으로 연결시켜준다.
//단 시작의 빈 head의 val에는 0이 들어가기 때문에 head.next를 리턴해준다.
class Solution {
public ListNode mergeTwoLists(ListNode l1, ListNode l2) {
if(l1==null||l2==null) return l1==null ? l2 : l1;
ListNode head = new ListNode();
ListNode nextNode;
if(l1.val>l2.val){
head.next = new ListNode(l2.val);
nextNode = head.next;
l2=l2.next;
}else{
head.next = new ListNode(l1.val);
nextNode = head.next;
l1=l1.next;
}
while(l1!=null&&l2!=null){
if(l1.val>l2.val){
nextNode.next = l2;
l2=l2.next;
}else{
nextNode.next = l1;
l1=l1.next;
}
nextNode = nextNode.next;
}
if(l1 == null || l2 == null) nextNode.next = (l1 == null ? l2 : l1);
return head.next;
}
}
'문제풀이' 카테고리의 다른 글
Leetcode First Unique Character in a String JAVA (0) | 2020.12.25 |
---|---|
Leetcode Pascal's Triangle II JAVA (0) | 2020.12.24 |
백준 2042 구간합 JAVA (0) | 2020.12.22 |
백준 11559번 Puyo Puyo JAVA (0) | 2020.12.02 |
백준 14503번 로봇청소기 JAVA (0) | 2020.12.01 |