两数相加 II 删除链表中的节点 奇偶链表

445. 两数相加 II

妙麻了
Deque d1 = new ArrayDeque<>();
Deque d2 = new ArrayDeque<>();
while(l1 != null) {
d1.addLast(l1.val);
l1 = l1.next;
}
while(l2 != null) {
d2.addLast(l2.val);
l2 = l2.next;
}
int carry = 0;熟悉的味道
ListNode head = null;
while(!d1.isEmpty() || !d2.isEmpty() || carry > 0) {熟悉的配方
int sum = carry;
sum += d1.isEmpty() ? 0 : d1.removeLast();
sum += d2.isEmpty() ? 0 : d2.removeLast();
ListNode node = new ListNode(sum % 10);
node.next = head;
head = node;
carry = sum / 10;

    }
    return head;

237. 删除链表中的节点

成为他,取代他
node.val = node.next.val;
node.next = node.next.next;


328. 奇偶链表

注意是,位置序号的奇偶
if(head == null) return null;
ListNode odd = head;
ListNode evenHead = head.next;
ListNode even = evenHead;
while(even != null && even.next != null) {先后顺序也得注意
odd.next = even.next;
odd = odd.next;
even.next = odd.next;
even = even.next;
}
odd.next = evenHead;别忘了组合起来
return head;

posted on 2022-12-05 16:29  xtdnn  阅读(23)  评论(0)    收藏  举报

导航