Re: sorting int[] in descending order
- From: Eric Sosman <Eric.Sosman@xxxxxxx>
- Date: Fri, 27 Oct 2006 11:37:38 -0400
Patricia Shanahan wrote On 10/27/06 11:20,:
Vahe Musoyan wrote:
What's the best way to sort an array of integers in descending order?
I know that one can sort in ascending order and reverse the array. Is
there any other/better way?
There are other ways, but I don't think any of the ones I know are better:
1. Write your own quicksort descending order implementation.
2. Create an Integer array with the values from the int[] and
Arrays.sort it using a supplied Comparator that reverses the
a.compareTo(b) result.
3. Replace each element of the array with the result of subtracting it
from -1, sort normally, then repeat the replacement operation. The
initial subtraction maps the largest value to the smallest, smallest to
largest etc. The final subtraction restores the original values.
[...]
4. "Count backwards:" sort the array in ascending order, but
"reflect" the index whenever you access it. Most crudely,
replace array[i] with array[array.length-1-i]. Somewhat more
smoothly, replace
for (int i = 0; i < array.length; ++i)
with
for (int i = array.length; --i >= 0; )
--
Eric.Sosman@xxxxxxx
.
- References:
- sorting int[] in descending order
- From: Vahe Musoyan
- Re: sorting int[] in descending order
- From: Patricia Shanahan
- sorting int[] in descending order
- Prev by Date: Re: sorting int[] in descending order
- Next by Date: Re: i cant seem to figure something simple out
- Previous by thread: Re: sorting int[] in descending order
- Next by thread: Re: sorting int[] in descending order
- Index(es):
Relevant Pages
|
|