Hazır fonksiyonu kullanacaksın, ama içinde ne olduğunu bir kez görmek gerekir. En sade yöntem eklemeli sıralamadır: elindeki kâğıtları dizer gibi, her yeni elemanı solundaki sıralı kısımda yerine kaydırırsın.
for i in range(1, len(values)):x = values[i]j = i - 1while j >= 0 and values[j] > x:values[j + 1] = values[j]j -= 1values[j + 1] = x
x kenara alınır; ondan büyük olanlar birer sağa kayar; açılan boşluğa x yazılır. Döngü bittiğinde j, x'ten büyük olmayan son elemanı gösterir; boşluk onun bir sağındadır.Bu yöntem en kötü durumda n × n adım atar (ters sıralı liste). İyi yöntemler (Python'un kullandığı da) n log n'dir: bir milyon eleman için bir trilyon yerine yirmi milyon adım. Akılda tutulacak sonuç: bir kez sıralamak ucuzdur; sıraladıktan sonra her arama ikili aramayla log n'e iner. n sorgu için "sırala, sonra ara" toplamda n log n eder.