I'm trying to create a list of random numbers and have them inserted in order, heres the function which is supposed to do the task. It's not quite working however. Basically I have a temporary buffer that copies all numbers from the end of the list until it gets to the point where the number is greater than the input_item. As for inserting the item however, it loops through the current list until it finds the position it should be in. Once this is complete what I want to happen is to go from the position the input_item has been placed and put all the numbers in the temporary buffer back in the primary buffer.
-----------------------<br />To begin at the beginning
author and iconoclast
Hi Paul, Welcome to JavaRanch! If you're doing this just to get the job done, then why not use the static java.util.Arrays.sort() functions to sort the complete array. It will likely be faster than anything else you will come up with. If you're writing your own sort routine just to learn how to write sort routines, then an algorithms book like Sedgewick Volume 1 would be a big help. What you're trying to write is something like an "insertion sort," and it's not only hard to write but terribly slow for arrays of any size; there are better choices.
Once this is complete what I want to happen is to go from the position the input_item has been placed... <snip> loop2: shift remaining list to its right, start from the end of the list
forgive me, but these seem to be at odds. according to your pseudo-code, you should start moving the elements from the END, not the middle. If this is a class assignment, shouldn't you do it the way it's asked for? This may be a minor point, but when I was teaching Math, if the students didn't do something the way it was supposed to be done, I woudn't give them full credit. I don't want to start an educational debate, but this should be considered. f
Never ascribe to malice that which can be adequately explained by stupidity.