161 lines
4.2 KiB
Java
161 lines
4.2 KiB
Java
package c.i.a.c.d2;
|
|
|
|
import java.util.Arrays;
|
|
import java.util.Random;
|
|
/* compiled from: ShuffleOrder */
|
|
public interface h0 {
|
|
|
|
/* compiled from: ShuffleOrder */
|
|
public static class a implements h0 {
|
|
public final Random a;
|
|
public final int[] b;
|
|
|
|
/* renamed from: c reason: collision with root package name */
|
|
public final int[] f798c;
|
|
|
|
/* JADX WARNING: Illegal instructions before constructor call */
|
|
public a(int i, Random random) {
|
|
this(r0, random);
|
|
int[] iArr = new int[i];
|
|
int i2 = 0;
|
|
while (i2 < i) {
|
|
int i3 = i2 + 1;
|
|
int nextInt = random.nextInt(i3);
|
|
iArr[i2] = iArr[nextInt];
|
|
iArr[nextInt] = i2;
|
|
i2 = i3;
|
|
}
|
|
}
|
|
|
|
public a(int[] iArr, Random random) {
|
|
this.b = iArr;
|
|
this.a = random;
|
|
this.f798c = new int[iArr.length];
|
|
for (int i = 0; i < iArr.length; i++) {
|
|
this.f798c[iArr[i]] = i;
|
|
}
|
|
}
|
|
|
|
@Override // c.i.a.c.d2.h0
|
|
public h0 a(int i, int i2) {
|
|
int i3 = i2 - i;
|
|
int[] iArr = new int[(this.b.length - i3)];
|
|
int i4 = 0;
|
|
int i5 = 0;
|
|
while (true) {
|
|
int[] iArr2 = this.b;
|
|
if (i4 >= iArr2.length) {
|
|
return new a(iArr, new Random(this.a.nextLong()));
|
|
}
|
|
if (iArr2[i4] < i || iArr2[i4] >= i2) {
|
|
iArr[i4 - i5] = iArr2[i4] >= i ? iArr2[i4] - i3 : iArr2[i4];
|
|
} else {
|
|
i5++;
|
|
}
|
|
i4++;
|
|
}
|
|
}
|
|
|
|
@Override // c.i.a.c.d2.h0
|
|
public int b() {
|
|
return this.b.length;
|
|
}
|
|
|
|
@Override // c.i.a.c.d2.h0
|
|
public int c() {
|
|
int[] iArr = this.b;
|
|
if (iArr.length > 0) {
|
|
return iArr[0];
|
|
}
|
|
return -1;
|
|
}
|
|
|
|
@Override // c.i.a.c.d2.h0
|
|
public int d(int i) {
|
|
int i2 = this.f798c[i] - 1;
|
|
if (i2 >= 0) {
|
|
return this.b[i2];
|
|
}
|
|
return -1;
|
|
}
|
|
|
|
@Override // c.i.a.c.d2.h0
|
|
public int e(int i) {
|
|
int i2 = this.f798c[i] + 1;
|
|
int[] iArr = this.b;
|
|
if (i2 < iArr.length) {
|
|
return iArr[i2];
|
|
}
|
|
return -1;
|
|
}
|
|
|
|
@Override // c.i.a.c.d2.h0
|
|
public h0 f(int i, int i2) {
|
|
int[] iArr = new int[i2];
|
|
int[] iArr2 = new int[i2];
|
|
int i3 = 0;
|
|
int i4 = 0;
|
|
while (i4 < i2) {
|
|
iArr[i4] = this.a.nextInt(this.b.length + 1);
|
|
int i5 = i4 + 1;
|
|
int nextInt = this.a.nextInt(i5);
|
|
iArr2[i4] = iArr2[nextInt];
|
|
iArr2[nextInt] = i4 + i;
|
|
i4 = i5;
|
|
}
|
|
Arrays.sort(iArr);
|
|
int[] iArr3 = new int[(this.b.length + i2)];
|
|
int i6 = 0;
|
|
int i7 = 0;
|
|
while (true) {
|
|
int[] iArr4 = this.b;
|
|
if (i3 >= iArr4.length + i2) {
|
|
return new a(iArr3, new Random(this.a.nextLong()));
|
|
}
|
|
if (i6 >= i2 || i7 != iArr[i6]) {
|
|
int i8 = i7 + 1;
|
|
iArr3[i3] = iArr4[i7];
|
|
if (iArr3[i3] >= i) {
|
|
iArr3[i3] = iArr3[i3] + i2;
|
|
}
|
|
i7 = i8;
|
|
} else {
|
|
iArr3[i3] = iArr2[i6];
|
|
i6++;
|
|
}
|
|
i3++;
|
|
}
|
|
}
|
|
|
|
@Override // c.i.a.c.d2.h0
|
|
public int g() {
|
|
int[] iArr = this.b;
|
|
if (iArr.length > 0) {
|
|
return iArr[iArr.length - 1];
|
|
}
|
|
return -1;
|
|
}
|
|
|
|
@Override // c.i.a.c.d2.h0
|
|
public h0 h() {
|
|
return new a(0, new Random(this.a.nextLong()));
|
|
}
|
|
}
|
|
|
|
h0 a(int i, int i2);
|
|
|
|
int b();
|
|
|
|
int c();
|
|
|
|
int d(int i);
|
|
|
|
int e(int i);
|
|
|
|
h0 f(int i, int i2);
|
|
|
|
int g();
|
|
|
|
h0 h();
|
|
}
|