JavaScript: DHTML Insertion SortThis page demonstrates the Insertion Sort algorithm.
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. Related ArticlesOther Sorting Algorithms
Advanced CodeSend Feedback |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
© Copyright 2010 Chirp Internet
- Page Last Modified: 22 November 2009
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||