与えられたintの配列に対して、すべての要素を出力するプログラムを書く必要がありますが、各値は繰り返しは1回だけです。それは私の家庭教師です。私はここにいくつかの例があることに同意しますが、特別な条件があります:配列から数値を削除する
補助配列、コレクションまたは文字列を作成しないでください!
標準のjava.lang以外のパッケージからクラスを使用しないでください。私はそう遠くないので、ここでのJavaを勉強してきた
は、私がやったことです:int型の最小値を印刷することができませんので
public class Third {
public static void main(String[] args) {
int[] p = {5, 2, 2, 5, -1, 5, 12, 2, 5, 44, 12, 9};
remove(p);
}
static public void remove(int[] a) {
int min = Integer.MIN_VALUE;
for (int i = 0; i < a.length; i++) {
for (int j = i + 1; j < a.length; j++) {
if (a[i] == a[j]) {
a[i] = min;
}
}
}
for (int j = 0; j < a.length; j++) {
if (a[j] != min) {
System.out.println(a[j]);
}
}
}
}
私は、これは効率的ではないことを実現します。それで、それを正しく行うための他の方法はありますか?
基本的に重複を削除したいのですか?最小値の問題は、仕様が不足していることです。空のスペースについてはどうしますか?彼らは2つ以上ある場合、重複する必要がありますいくつかの値を持つ必要があります... –
コメントに詳細を入れないでください。代わりにあなたの質問を更新してください。 – GhostCat