skip to content

JavaScript: DHTML Insertion Sort

 Tweet0 Shares0 Tweets

JavaScript: DHTML Insertion Sort

This page demonstrates the Insertion Sort algorithm.

idcolourrandom
1red418
2blue964
3blue482
4purple53
5orange852
6orange858
7yellow225
8orange296
9green730
10red409
11yellow141
12orange842
13red550
14green711
15purple762
16red122
17yellow76
18red527
19yellow413
20orange559
Sort by DESC?

[add rows to TABLE]

How does it work?

For a more detailed discussion on the sorting process, you can refer to the Bubble Sort page. The only difference between the two is the actual sorting algorithm, with the Insertion Sort, in theory, being a little bit faster:

// global variables var parent = null; // 'parent' node var items = new Array(); // array of 'child' nodes var col = 0; // column for sorting function sortTable(tableid, n, desc) { parent = document.getElementById(tableid); col = n; if(parent.nodeName != "TBODY") parent = parent.getElementsByTagName("TBODY")[0]; if(parent.nodeName != "TBODY") return false; // assert: parent is now a TBODY node items = parent.getElementsByTagName("TR"); var N = items.length; // insertion sort for(var j=1; j < N; j++) { for(var i=j; i > 0 && compare(get(i), get(i-1), desc); i--) { exchange(i, i-1); } } }

For more advanced (and complicated) sorting techniques, see the Shell Sort and Quick Sort demonstrations.

< JavaScript

Send a message to The Art of Web:


used only for us to reply, and to display your gravatar.

CAPTCHA

<- copy the digits from the image into this box

press <Esc> or click outside this box to close

Post your comment or question
top