Ooops...
Replace

java.util.Arrays.sort(elementData, 0, elementCount - 1);

with

java.util.Arrays.sort(elementData, 0, elementCount);



----------------------------------------------------



I claim this is faster (inspired by the Vector's source code, he-he):

public class VladsVectorSort  {

        SortableVector vec = new SortableVector();

        public static void main(String[] args)  {
                VladsVectorSort v = new VladsVectorSort();
                v.arraySimpleSort();
        }

        void arraySimpleSort()  {
                vec.add(new String("abbot"));
                vec.add(new String("silium"));
                vec.add(new String("randy"));
                vec.add(new String("goofy"));
                vec.add(new String("zenia"));
                vec.add(new String("pokie"));
                vec.add(new String("xylaphone"));
                vec.add(new String("dogface"));
                vec.add(new String("friggen-joe"));
                vec.add(new String("penuckle"));
                vec.add(new String("charlie"));
                vec.add(new String("manna"));

                System.out.println("before: " + vec);
                vec.sort();
                System.out.println("after :0) : " + vec);
        }

        class SortableVector extends java.util.Vector
        {
          public synchronized void sort()
          {
            java.util.Arrays.sort(elementData, 0, elementCount - 1);
          }
        }
}


This is it (at least it seems to be!)
Of course you need to make sure all Vector elements are mutually
Comparable...

--V.
    


Craig O'Brien wrote:
> 
> Vlad and I were thinking along the same lines.  This is easy but may not be
> the best for commercial applications.
> 
> Here is a simple program I just wrote:
> 
> class CraigsVectorSort  {
> 
>         Vector vec = new Vector();
> 
>         public static void main(String[] args)  {
>                 CraigsVectorSort v = new CraigsVectorSort();
>                 v.arraySimpleSort();
>         }
> 
>         void arraySimpleSort()  {
>                 vec.add(new String("abbot"));
>                 vec.add(new String("silium"));
>                 vec.add(new String("randy"));
>                 vec.add(new String("goofy"));
>                 vec.add(new String("zenia"));
>                 vec.add(new String("pokie"));
>                 vec.add(new String("xylaphone"));
>                 vec.add(new String("dogface"));
>                 vec.add(new String("friggen-joe"));
>                 vec.add(new String("penuckle"));
>                 vec.add(new String("charlie"));
>                 vec.add(new String("manna"));
> 
>                 System.out.println("before: " + vec);
>                 Object[] obArr = vec.toArray();
>                 Arrays.sort(obArr);
>                 vec.removeAllElements();
>                 for (int i = 0; i < obArr.length; i++)  {
>                         vec.add(obArr[i]);
>                 }
>                 obArr = null;
>                 System.out.println("after :0) : " + vec);
>         }
> }
> 
> It works efficiently.  You may want to consider using one of the collections
> rather then Vector.  You may not need the synchronization so an ArrayList
> would be faster.  Many many considerations.
> 
> Let me know what you think.
> 
> Regards,
> Craig O'Brien
> 
> Java Programmer/Web Developer
> [EMAIL PROTECTED]
> 
> -----Original Message-----
> From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]
> Sent: Friday, March 02, 2001 6:40 PM
> To: [EMAIL PROTECTED]
> Subject: Re: QuickSorting Vectors
> 
> Don't have a sample but you can
> take a look at the java.util.Arrays's sort(Object[]) method.
> May be you can use that in combination with Vector.toArray()
> which calls System.arraycopy, so this should be fast, may be
> even faster than iterating over Vector's elements during
> custom sort if you decide to sort Vectors directly.
> 
> method...
> 
> --V.
> 
> Ryan wrote:
> >
> > I am a student but this is not for a class.. I am trying to keep a thread
> > running that holds files in a directory. I just want to maximize my
> bandwith
> > and CPU usage for my web site.
> >
> > -ryan
> >
> > ----- Original Message -----
> > From: "Stefán F. Stefánsson" <[EMAIL PROTECTED]>
> > To: <[EMAIL PROTECTED]>
> > Sent: Friday, March 02, 2001 5:21 PM
> > Subject: RE: QuickSorting Vectors
> >
> > > R U a student?
> > >
> > > When is the deadline?
> > >
> > > -----Original Message-----
> > > From: Ryan [mailto:[EMAIL PROTECTED]]
> > > Sent: 3. mars 2001 00:46
> > > To: [EMAIL PROTECTED]
> > > Subject: QuickSorting Vectors
> > >
> > >
> > > Does anyone have a quicksorting class that sorts Vectors containing
> > > Strings that wouldn't mind letting me look at?
> > >
> > >
> > > -ryan
> > >
> > >
> > > ---------------------------------------------------------------------
> > > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > > For additional commands, email: [EMAIL PROTECTED]
> > >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > For additional commands, email: [EMAIL PROTECTED]
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, email: [EMAIL PROTECTED]
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, email: [EMAIL PROTECTED]

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, email: [EMAIL PROTECTED]

Reply via email to