Sorting algorithms more efficient than bubble sort
<p>I have written this algorithm to sort a list using bubble sort. Is this the most efficient way to sort a list?<br>
If not, why?<br>
What makes it less efficient and what are the alternatives present?</p>

<pre><code>def BubbleSort(List):
     for i in range(len(List)-1):
          for Number in range(len(List)-1):
               if List[Number] &gt; List[Number+1]:
                    List[Number], List[Number+1] = List[Number+1], List[Number]

print(BubbleSort([5,2,1,4,3])
</code></pre>

<p>Thanks!</p>