なあ、再帰関数好きな人いる? パート2 [転載禁止]©5ch.io
■ このスレッドは過去ログ倉庫に格納されています
0334デフォルトの名無しさん
2015/09/12(土) 16:51:13.69ID:fRaBt1iwstatic int[] loop(int[] a, int[] values) {
int outer = 0;
for (int inner = 0; inner < a.length; inner++)
if (contains(values, a[inner]))
a[outer++] = a[inner];
return Arrays.copyOf(a, outer);
}
static int[] recursive(int[] a, int value) {
return recursive(0, 0, a, value);
}
static int[] recursive(int outer, int inner, int[] a, int value) {
if (inner >= a.length)
return Arrays.copyOf(a, outer);
if (a[inner] != value)
a[outer++] = a[inner];
return recursive(outer, inner + 1, a, value);
}
static boolean contains(int[] a, int value) {
for (int i = 0; i < a.length; i++)
if (a[i] == value)
return true;
return false;
}
■ このスレッドは過去ログ倉庫に格納されています