package org.onecmdb.swing.treetable; public abstract class MergeSort { protected Object[] toSort; protected Object[] swapSpace; public void sort(Object[] paramArrayOfObject) { if ((paramArrayOfObject != null) && (paramArrayOfObject.length > 1)) { int i = paramArrayOfObject.length; this.swapSpace = new Object[i]; this.toSort = paramArrayOfObject; mergeSort(0, i - 1); this.swapSpace = null; this.toSort = null; } } public abstract int compareElementsAt(int paramInt1, int paramInt2); protected void mergeSort(int paramInt1, int paramInt2) { if (paramInt1 != paramInt2) { int i = (paramInt1 + paramInt2) / 2; mergeSort(paramInt1, i); mergeSort(i + 1, paramInt2); merge(paramInt1, i, paramInt2); } } protected void merge(int paramInt1, int paramInt2, int paramInt3) { int k; int i = k = paramInt1; int j = paramInt2 + 1; while ((i <= paramInt2) && (j <= paramInt3)) { if (compareElementsAt(j, i) < 0) { this.swapSpace[(k++)] = this.toSort[(j++)]; continue; } this.swapSpace[(k++)] = this.toSort[(i++)]; } if (i <= paramInt2) while (i <= paramInt2) this.swapSpace[(k++)] = this.toSort[(i++)]; while (j <= paramInt3) this.swapSpace[(k++)] = this.toSort[(j++)]; for (int k2 = paramInt1; k2 <= paramInt3; k2++) this.toSort[k2] = this.swapSpace[k2]; } } /* Location: D:\Program Files (x86)\OneCMDB\2.1.0\repository\Content\applet\onecmdb-applet-dependencies.jar * Qualified Name: org.onecmdb.swing.treetable.MergeSort * JD-Core Version: 0.6.0 */