02.09.2013 Views

Sorteren Sorteren door selectie

Sorteren Sorteren door selectie

Sorteren Sorteren door selectie

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>Sorteren</strong> <strong>door</strong> invoegen<br />

Het principe: de objecten zijn verdeeld in een doelreeks a1, . . .,ai−1 en een<br />

bronreeks ai, . . .,an; in opeenvolgende stappen wordt het volgende element ai<br />

van de bronreeks ingevoegd in de doelreeks.<br />

Voorbeeld:<br />

De functie:<br />

44 55 12 42 94 18 06 67<br />

i = 2 44 55 12 42 94 18 06 67<br />

i = 3 12 44 55 42 94 18 06 67<br />

i = 4 12 42 44 55 94 18 06 67<br />

i = 5 12 42 44 55 94 18 06 67<br />

i = 6 12 18 42 44 55 94 06 67<br />

i = 7 06 12 18 42 44 55 94 67<br />

i = 8 06 12 18 42 44 55 67 94<br />

Voor i = 2, 3, . . ., n doe<br />

{<br />

x = ai;<br />

voeg x in op de juiste plaats tussen {a1, . . .,ai};<br />

}<br />

void invoegen ( int a [ ] , int n)<br />

{<br />

int i , j ;<br />

int x ;<br />

for ( i =2; i 0 && x < a [ j ] )<br />

extra test j > 0 wordt overbodig <strong>door</strong> gebruikt te maken van een sentinel,<br />

<strong>door</strong> in a[0] de waarde van x te stoppen. Dit nulde element van de array<br />

bevat toch geen element van de rij die moet gesorteerd worden.<br />

De rij met de te sorteren getallen begint vanaf a[1].<br />

<strong>Sorteren</strong> <strong>door</strong> wisselen<br />

Het principe van bubble sort: vergelijk twee naast elkaar gelegen elementen;<br />

indien ze niet in volgorde staan, wissel dan deze de elementen. Dit wordt<br />

gedaan voor elk paar buren in de rij en het geheel wordt herhaald tot geen<br />

enkel paar buren nog gewisseld wordt.<br />

Voorbeeld:<br />

44 55 12 42 94 18 06 67<br />

i = 2 06 44 55 12 42 94 18 67<br />

i = 3 06 12 44 55 18 42 94 67<br />

i = 4 06 12 18 44 55 42 67 94<br />

i = 5 06 12 18 42 44 55 67 94<br />

i = 6 06 12 18 42 44 55 67 94<br />

i = 7 06 12 18 42 44 55 67 94<br />

i = 8 06 12 18 42 44 55 67 94

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!