input: Write a function to sort a given array in ascending order using bubble sort. If the array is empty, the function should return an empty array.
  def bubble_sort(arr): 
      n = len(arr) 
      for i in range(n-1):
          for j in range(0, n-i-1): 
              if arr[j] > arr[j+1] : 
                  arr[j], arr[j+1] = arr[j+1], arr[j] 
      return arr
  
  assert bubble_sort([3,7,4,1]) == [1,3,4,7]
  assert bubble_sort([]) == []
  assert bubble_sort([1,2,3,4,5]) == [1,2,3,4,5]
  assert bubble_sort([5,4,3,2,1]) == [1,2,3,4,5]
  assert bubble_sort([1]) == [1]
output: def bubble_sort(arr): 
      n = len(arr) 
      for i in range(n-1):
          for j in range(0, n-i-1): 
              if arr[j] > arr[j+1] : 
                  arr[j], arr[j+1] = arr[j+1], arr[j] 
      return arr