題目連結:https://www.nowcoder.com/practice/3245215fffb84b7b81285493eae92ff0?tpId=37&tqId=21226&rp=1&ru=/exam/oj/ta&qru=/exam/oj/ta&sourceUrl=%2Fexam%2Foj%2Fta%3FtpId%3D37&difficulty=undefined&judgeStatus=undefined&tags=&title=
描述
明明生成了N個1到500之間的隨機整數。請你刪去其中重複的數字,即相同的數字只保留一個,把其餘相同的數去掉,然後再把這些數從小到大排序,按照排好的順序輸出。
輸入描述:
第一行先輸入隨機整數的個數N,接下來的 N 行每行輸入一個整數,代表明明生成的隨機數。
輸出描述:
輸出多行,表示輸入資料處理後的結果。
Java程式碼實現:
import java.util.Iterator;
import java.util.Scanner;
import java.util.TreeSet;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
TreeSet set = new TreeSet<>();
int num = scanner.nextInt(); //要輸入的資料個數
//輸入資料並儲存到set中
for (int i = 0; i < num; i++){
set.add(scanner.nextInt());
}
//迭代器遍歷
Iterator iterator = set.iterator();
while (iterator.hasNext()){
System.out.println(iterator.next());
}
scanner.close();
}
}
透過這道題學習Treeset的簡單知識:
【有序、唯一、基於紅黑樹實現】
向Treeset中新增元素:
TreeSet set = new TreeSet<>(); set.add("新增的元素");
從Treeset中刪除元素:
set.remove("刪除的元素");
判斷TreeSet中是否存在指定元素:
boolean isExist = set.contains("Java");
獲取TreeSet中第一個元素:
String first = set.first();
獲取TreeSet中最後一個元素:
String last = set.last();
可以使用迭代器遍歷Treeset中的元素,程式碼如下:
Iterator iterator = set.iterator();
while (iterator.hasNext()){
System.out.println(iterator.next());
}