package T1;
/*
* 1、考慮元素唯一性問題:給出一個整數集合,假定這些整數存盤在陣列 A[1…n]中,確定
它們中是否存在兩個相等的元素。請設計出一個有效演算法來解決這個問題,你的演算法的時間
復雜性是多少?
具體要求
輸入:輸入的第一行是一個正整數 m,表示測驗例個數。接下來幾行是 m 個測驗例的數
據,每個測驗例的資料由兩行組成,其中第一行為一個正整數 n (n<=500),表示整數序列
的長度,第二行給出整數序列,整數之間用一個空格隔開。
輸出:對于每個測驗例輸出一行,若該組測驗例存在兩個相等的元素則輸出 Yes,否則,
輸出No。每個測驗例的輸出資料用一行表示。
*/
import java.util.Scanner;
public class T1 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("請輸入測驗用例數:");
int m = sc.nextInt();
for(int i=0;i<m;i++) {
System.out.println("請輸入陣列包含元素數:");
int n = sc.nextInt();
getMessage a = new getMessage(n);
System.out.println("請依次輸入陣列元素并用空格隔開:");
a.inputArgs(n);
System.out.println("查找是否有相同元素:"+a.search());
System.out.println();
}
sc.close();
}
}
class getMessage{
private int n;
private int args[] = new int [n];
public getMessage(int n) {
this.n = n;
}
public void inputArgs(int n) {
int args[] = new int[n];
Scanner sc = new Scanner(System.in);
for(int i=0;i<n;i++) {
args[i] = sc.nextInt();
}
sc.close();
this.args=args;
}
public void printArgs() {
for (int i=0;i<n;i++) {
System.out.print(this.args[i]+" ");
}
}
public boolean search() {
for(int i=0;i<n-1;i++) {
for(int j=i+1;j<n;j++) {
if(this.args[i]==this.args[j]) {
return true;
}
}
}
return false;
}
}
這段代碼為什么只能執行第一次,后面的都執行不了呢?
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/268867.html
標籤:Eclipse
下一篇:java連接OPCserver
