var optimized_gnome; var selection; var numbers = Array(); function populate(length, min_value, max_value) { for(var input = 0; input < length; input++) { numbers[input] = Math.round((max_value - min_value) * Math.random() + min_value); } } function reset() { optimized_gnome.reset(); selection.reset(); } function sort() { optimized_gnome.sort(); selection.sort(); } function repopulate() { populate(25, -100, 100); optimized_gnome.copy(numbers); selection.copy(numbers); } function go() { populate(25, -100, 100); optimized_gnome = new sort_array('optimized_gnome', numbers.length); optimized_gnome.copy(numbers); optimized_gnome.sort = optimized_gnome_sort; selection = new sort_array('selection', numbers.length); selection.copy(numbers); selection.sort = selection_sort; document.getElementById('populate').onclick = repopulate; document.getElementById('reset').onclick = reset; document.getElementById('sort').onclick = sort; }