home *** CD-ROM | disk | FTP | other *** search
- package com.sfs.util;
-
- import java.util.Enumeration;
- import java.util.Vector;
-
- public class Quicksort {
- // $FF: renamed from: v java.util.Vector
- Vector field_0;
- // $FF: renamed from: s com.sfs.util.Sortable
- Sortable field_1;
-
- public Quicksort(Sortable var1) {
- this.field_1 = var1;
- }
-
- protected void _quicksort(int var1, int var2) {
- if (var1 < var2) {
- this.swap(var1, (var1 + var2) / 2);
- int var4 = var1;
-
- for(int var3 = var1 + 1; var3 <= var2; ++var3) {
- if (this.field_1.compare(this.field_0.elementAt(var3), this.field_0.elementAt(var1)) < 0) {
- ++var4;
- this.swap(var4, var3);
- }
- }
-
- this.swap(var1, var4);
- this._quicksort(var1, var4 - 1);
- this._quicksort(var4 + 1, var2);
- }
- }
-
- public void doQuicksort(Vector var1) {
- this.field_0 = var1;
- synchronized(var1){}
-
- try {
- this._quicksort(0, var1.size() - 1);
- } catch (Throwable var5) {
- throw var5;
- }
-
- }
-
- public static void main(String[] var0) {
- Vector var1 = new Vector();
- var1.addElement("Wsdfsdf");
- var1.addElement("Esdf");
- var1.addElement("Fsdfsdfsdfs");
- var1.addElement("Vsdfd");
- System.out.println("vorher:");
- Enumeration var2 = var1.elements();
-
- while(var2.hasMoreElements()) {
- System.out.println((String)var2.nextElement());
- }
-
- Quicksort var3 = new Quicksort(new Length());
- var3.doQuicksort(var1);
- System.out.println("sortiert nach Länge:");
- var2 = var1.elements();
-
- while(var2.hasMoreElements()) {
- System.out.println((String)var2.nextElement());
- }
-
- }
-
- protected void swap(int var1, int var2) {
- Object var3 = this.field_0.elementAt(var1);
- this.field_0.setElementAt(this.field_0.elementAt(var2), var1);
- this.field_0.setElementAt(var3, var2);
- }
- }
-