Trong bài viết này, chúng ta sẽ tìm hiểu cách so sánh các phần tử trong Collection để tìm giá trị nhỏ nhất và lớn nhất. Collection là framework cung cấp kiến trúc lưu trữ và thao tác nhóm đối tượng.
Ví dụ minh họa
Đầu vào:
Danh sách đầu vào: [300, 500, 180, 450, 610]
Đầu ra mong muốn:
Giá trị nhỏ nhất: 180 Giá trị lớn nhất: 610
Thuật toán
- Bắt đầu
- Khai báo List
input_list - Gán giá trị
- Sử dụng
Collections.min()vàCollections.max()để tìm min/max - Hiển thị kết quả
- Kết thúc
Ví dụ 1: Xử lý trực tiếp trong main
import java.util.*;
public class Demo {
public static void main(String[] args) {
List<Integer> input_list = new ArrayList<>();
input_list.add(300);
input_list.add(500);
input_list.add(180);
input_list.add(450);
input_list.add(610);
System.out.println("Danh sách được định nghĩa: " + input_list);
int minimum_value = Collections.min(input_list);
int maximum_value = Collections.max(input_list);
if (minimum_value == maximum_value) {
System.out.println("Tất cả phần tử trong danh sách đều bằng nhau");
} else {
System.out.println("\nGiá trị nhỏ nhất: " + minimum_value);
System.out.println("Giá trị lớn nhất: " + maximum_value);
}
}
}
Kết quả
Danh sách được định nghĩa: [300, 500, 180, 450, 610] Giá trị nhỏ nhất: 180 Giá trị lớn nhất: 610
Ví dụ 2: Sử dụng phương thức tách biệt (OOP)
import java.util.*;
public class Demo {
static void min_max(List<Integer> input_list) {
int minimum_value = Collections.min(input_list);
int maximum_value = Collections.max(input_list);
if (minimum_value == maximum_value) {
System.out.println("Tất cả phần tử trong danh sách đều bằng nhau");
} else {
System.out.println("\nGiá trị nhỏ nhất: " + minimum_value);
System.out.println("Giá trị lớn nhất: " + maximum_value);
}
}
public static void main(String[] args) {
List<Integer> input_list = new ArrayList<>();
input_list.add(300);
input_list.add(500);
input_list.add(180);
input_list.add(450);
input_list.add(610);
System.out.println("Danh sách được định nghĩa: " + input_list);
min_max(input_list);
}
}
Kết quả
Danh sách được định nghĩa: [300, 500, 180, 450, 610] Giá trị nhỏ nhất: 180 Giá trị lớn nhất: 610