def bubble_sort(a_list) counter = 1 n = a_list.length (n-1).downto(0) do |mark| 0.upto(mark-1) do |i| if a_list[i] > a_list[i+1] counter += 1 swap(a_list, i, i+1) end end end puts 'Already sorted!' if counter == 1 a_list end def swap(a_list, i, j) a_list[i], a_list[j] = a_list[j], a_list[i] end