input: Write a function to merge two sorted lists A and B into a single sorted list. The function should take the first element of list A and compare it with the first element of list B. If the element from A is greater, it should add this element to the result list and move the pointer of B to the next element. If the element from A is smaller, the pointer should move to the next element of A, and so on. Continue this process until all elements from both lists are added to the result list in sorted order.
  def merge_sort(A, B):
   result = [] 
   i, j = 0, 0
  
   while i < len(A) and j < len(B):
   if A[i] < B[j]:
   result.append(A[i])
   i += 1
   else:
   result.append(B[j])
   j += 1
  
   result += A[i:]
   result += B[j:]
  
   return result
  
  assert merge_sort([3, 6, 8, 10, 11], [2, 5, 7, 12])==[2, 3, 5, 6, 7, 8, 10, 11, 12]
  assert merge_sort([1, 3, 5], [2, 4, 6])==[1, 2, 3, 4, 5, 6]
  assert merge_sort([], [1, 2, 3])==[1, 2, 3]
  assert merge_sort([5, 6], [])==[5, 6]
  assert merge_sort([], [])==[]
output: def merge_sort(A, B):
   result = [] 
   i, j = 0, 0
  
   while i < len(A) and j < len(B):
   if A[i] < B[j]:
   result.append(A[i])
   i += 1
   else:
   result.append(B[j])
   j += 1
  
   result += A[i:]
   result += B[j:]
  
   return result