Puedes explicarme con ejemplos y código como funciona el algoritmo de ordenación Sort?
Existen muchos algoritmos de ordenación de datos, siendo los más rápidos aquellos que hacen uso de la estructura particular de los datos, razón por la cual la elección del algoritmo depende de la estructura de los datos en particular. Por lo general se entiende que el orden es creciente, aunque también es posible la ordenación de mayor a menor. Un algoritmo simple, aunque poco eficiente para ordenar un conjunto de datos de menor a mayor es el siguiente:

Para cada entrada en nuestra lista de datos a ordenar, comparamos un valor con su siguiente y si este último es mayor invertimos sus posiciones. El algoritmo procede repitiendo este proceso hasta que ningún cambio es necesario. 
Un ejemplo en pseudocódigo sería:

continua = true
While continua {
    continua = false
    For i in [ 1.. Longitud(Datos)] 
    {    
        If Datos[i]>Datos[i+1] 
        {
           copia = Datos[ i+1 ]
           Datos[ i +1 ] = Datos[ i ]
           Datos [ i ] = copia
           continua = true
          }
    }   

Cabe destacar que por lo general, los lenguajes de programación cuentan con funciones, o librerías adicionales, que son capaces de realizar esta tarea de manera eficiente, siendo en general preferibles a las funciones que el usuario  pueda implementar.