def main(): root1, root2 = ListNode(0), ListNode(0) root1.append([1]) root2.append([9, 9, 9, 5, 2, 5, 3]) sum_node1 = sum_lists_post_order(root1, root2) sum_node2 = sum_lists_pre_order(root1, root2) print(f"{root1} + {root2} = {sum_node1}") print(sum_node2)
def main(): root1 = ListNode(1) root1.append([2, 3, 4, 5, 6]) root2 = ListNode(0) root2.append([100, 200]) point = root2 while point.next: point = point.next point.next = root1 print(find_insertion_node(root1, root2))
def main(): root = ListNode(0) root.append([1, 3, 5, 7, 9]) point = root while point.val != 3: point = point.next print(root) print(point) remove_node(point) print(root)
def main(): list1 = ListNode(0) list2 = ListNode(1) list3 = ListNode(1) list1.append([1, 2, 3]) list2.append([2, 3, 4, 5, 4, 3, 2, 1]) list3.append([1]) print(is_palindrome(list1), is_palindrome(list2), is_palindrome(list3))
def main(): root = ListNode(0) root.append([10, 20, 30, 4, 5, 6, 7, 8]) print(root) partition(root, 8) print(root)
def main(): root = ListNode(0) root.append([1, 2, 3, 4, 5, 5, 6, 7, 8, 8, 8, 8]) print(root) remove_duplicate_node_without_extra_memory(root) print(root)
def main(): root = ListNode(0) root.append([1, 3, 4, 5, 6]) print(kth_last_node(root, 6))