Developer Toolbox

Sortare prin inserție

Construiește o parte sortată în stânga, câte o valoare pe rând. Fiecare valoare nouă e scoasă și mutată spre stânga până dă de o valoare mai mică.

  • Ω(n)
  • Θ(n²)
  • O(n²)
  • O(1)
  • da
  • da
  • comparare
  • mutare
  • în mână
  • parte sortată
  • pe poziția finală
0 / 372 pași

Perechi în ordine greșită: 154 (la început: 154) în ordine greșită puse în ordine

Comparații Deplasări

Apasă pe redare: liniile arată cum crește costul în timpul sortării

Apasă pe redare sau parcurge algoritmul pas cu pas.

Space: redă sau pauză. Săgețile stânga și dreapta: pas cu pas. Home și End: salt.

Încearcă: Alege o listă aproape sortată. Aproape nimic nu se deplasează, deci termină în foarte puțini pași.

Cum funcționează

Partea din stânga e mereu sortată. Scoți următoarea valoare, deplasezi fiecare valoare mai mare din partea sortată cu o poziție la dreapta, apoi pui valoarea în golul rămas. Așa își aranjează mulți oameni cărțile de joc în mână.

Când este o alegere bună

O alegere bună pentru liste scurte și pentru liste aproape sortate, unde e foarte rapid. Bibliotecile reale de sortare îl folosesc pentru bucățile mici ale listei, în interiorul unor metode mai rapide.