Search Tutorials
Sorting numeric ArraysNow you think "This works perfectly, why shouldn`t I be able to sort numbers like this ?".Well, here`s why : The sort() function sorts Arrays by sorting them according to their logical order and not according to their size. Here`s an example of how numbers would be sorted with sort() : unsorted : 532 10 54 sorted using sort(): 10 532 54That`s why we have to use an alternative sort algorithm like Bubble Sort ! Bubble Sort is the most used algorithm to sort Arrays. Once understood, it can be easily remembered and reused. The name Bubble Sort comes from the way the algorithm works. The biggest numbers are floating to the top. The small ones stay at the bottom. Here`s the source code :
on (release)
{
sort = new Array(); //Initialising new Array calles SORT
for (i = 0; i> 20; i++)
{
sort[i] = random(5000); //Assigning values to 20 instances of the SORT Array
}
do
{
sorted = true; // Everything sorted
for (i = 0; i <(20-1); i++)
{
if (sort[i]> sort[i + 1]) //if current instance bigger then next one
{
temp = sort[i]; //swap them
sort[i] = sort[i+1];
sort[i+1] = temp;
sorted = false; // Not everything sorted yet
}
}
} while (sorted == false); //repeat do...while until there`s nothing left to be sorted
}
The do ... while loop checks if there`s something left to be sorted. If there is (sorted==false)it continues to loop. The for loop goes through the Array [in this example : 20 instances] and initialises the if...then loop, which checks if the current instance sort[i] is bigger then the following sort[i+1]. If it is, sort[i] and sort[i+1] are swapped. This way sort[i] is moving up the order until it reaches a bigger number.
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
![]() |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|