<%! void bytt(int[] tabell, int p1, int p2) { tabell[p1] = tabell[p1] + tabell[p2]; tabell[p2] = tabell[p1] - tabell[p2]; tabell[p1] = tabell[p1] - tabell[p2]; return; } void sorter(int[] tabell) { boolean slutt = false; int pos1, pos2; while (slutt == false) { pos1 = 0; slutt = true; while (pos1 < tabell.length - 1) { if (tabell[pos1+1] < tabell[pos1]) { bytt(tabell, pos1, pos1+1); slutt = false; } pos1++; } } return; } %>
<%@include file="top.jsp" %>

Sortering av tabell

I denne øvingen skal vi lære å sortere en tabell

Tallene i tabellen vår er:
<% long a1 = System.currentTimeMillis(); int lengde = 1000; int[] tabell = new int[lengde]; int i = 0; while (i < tabell.length) { tabell[i] = (int) (Math.random()*999 + 1); if (i < tabell.length - 1) {out.println(tabell[i] + ", ");} else {out.println(tabell[i] + ".");} i++; } %>

<% sorter(tabell); i = 0; out.println("Etter sortering har vi:
"); while (i < tabell.length) { if (i < tabell.length - 1) {out.println(tabell[i] + ", ");} else {out.println(tabell[i] + ".");} i++; } long a2 = System.currentTimeMillis(); out.println("

Dette tok " + (a2-a1) + " ms"); %>