List of usage examples for org.apache.lucene.util IntroSorter IntroSorter
public IntroSorter()
From source file:org.codelibs.elasticsearch.common.util.CollectionUtils.java
License:Apache License
public static void sort(final long[] array, int len) { new IntroSorter() { long pivot; @Override// w w w . j a va2 s . c om protected void swap(int i, int j) { final long tmp = array[i]; array[i] = array[j]; array[j] = tmp; } @Override protected int compare(int i, int j) { return Long.compare(array[i], array[j]); } @Override protected void setPivot(int i) { pivot = array[i]; } @Override protected int comparePivot(int j) { return Long.compare(pivot, array[j]); } }.sort(0, len); }
From source file:org.codelibs.elasticsearch.common.util.CollectionUtils.java
License:Apache License
public static void sort(final float[] array, int len) { new IntroSorter() { float pivot; @Override// w w w . j av a 2s . com protected void swap(int i, int j) { final float tmp = array[i]; array[i] = array[j]; array[j] = tmp; } @Override protected int compare(int i, int j) { return Float.compare(array[i], array[j]); } @Override protected void setPivot(int i) { pivot = array[i]; } @Override protected int comparePivot(int j) { return Float.compare(pivot, array[j]); } }.sort(0, len); }
From source file:org.codelibs.elasticsearch.common.util.CollectionUtils.java
License:Apache License
public static void sort(final double[] array, int len) { new IntroSorter() { double pivot; @Override/*from www . jav a 2 s . c om*/ protected void swap(int i, int j) { final double tmp = array[i]; array[i] = array[j]; array[j] = tmp; } @Override protected int compare(int i, int j) { return Double.compare(array[i], array[j]); } @Override protected void setPivot(int i) { pivot = array[i]; } @Override protected int comparePivot(int j) { return Double.compare(pivot, array[j]); } }.sort(0, len); }
From source file:org.codelibs.elasticsearch.common.util.CollectionUtils.java
License:Apache License
public static void sort(final ObjectArrayList<byte[]> array) { new IntroSorter() { byte[] pivot; @Override// w ww. j av a 2s .com protected void swap(int i, int j) { final byte[] tmp = array.get(i); array.set(i, array.get(j)); array.set(j, tmp); } @Override protected int compare(int i, int j) { return compare(array.get(i), array.get(j)); } @Override protected void setPivot(int i) { pivot = array.get(i); } @Override protected int comparePivot(int j) { return compare(pivot, array.get(j)); } private int compare(byte[] left, byte[] right) { for (int i = 0, j = 0; i < left.length && j < right.length; i++, j++) { int a = left[i] & 0xFF; int b = right[j] & 0xFF; if (a != b) { return a - b; } } return left.length - right.length; } }.sort(0, array.size()); }
From source file:org.elasticsearch.common.util.CollectionUtils.java
License:Apache License
public static void sort(final long[] array, int len) { new IntroSorter() { long pivot; @Override/* w w w.j a v a 2 s . c o m*/ protected void swap(int i, int j) { final long tmp = array[i]; array[i] = array[j]; array[j] = tmp; } @Override protected int compare(int i, int j) { return Longs.compare(array[i], array[j]); } @Override protected void setPivot(int i) { pivot = array[i]; } @Override protected int comparePivot(int j) { return Longs.compare(pivot, array[j]); } }.sort(0, len); }