Bài Tập Java - Chèn Phần Tử Vào Mảng Trong Java - VietTuts
Có thể bạn quan tâm
Bài tập Java - Sắp xếp mảng theo thứ tự giảm dần Bài tập Java - Trộn 2 mảng trong java
Nội dung chính
- Bài tập Java - Chèn phần tử vào mảng trong Java
- Lời giải
Bài tập Java - Chèn phần tử vào mảng trong Java
Đề bài: Viết chương trình Java nhập một mảng số nguyên a0, a1, a2, …, an-1. Hãy sắp xếp mảng theo thứ tự tăng dần, sau đó chèn phần tử k vào mà vẫn đảm bảo mảng là tăng dần.
Lời giải
Chèn phần tử vào mảng trong java.
File: BaiTap24.java
package vn.viettuts.baitap.array; import java.util.Scanner; /** * Chương trình sắp xếp mảng theo thứ tự tăng dần, * sau đó chèn phần tử k vào mà vẫn đảm bảo mảng là tăng dần. * * @author viettuts.vn */ public class BaiTap24 { public static Scanner scanner = new Scanner(System.in); /** * main * * @param args */ public static void main(String[] args) { System.out.print("Nhập số phần tử của mảng: "); int n = scanner.nextInt(); // khởi tạo arr int [] arr = new int [n]; System.out.print("Nhập các phần tử của mảng: \n"); for (int i = 0; i < n; i++) { System.out.printf("a[%d] = ", i); arr[i] = scanner.nextInt(); } System.out.print("Nhập phần tử k = "); int k = scanner.nextInt(); // sắp xếp dãy số theo thứ tự tăng dần sortASC(arr); System.out.print("Sắp xếp mảng tăng dần: "); show(arr); System.out.printf("\nChèn phần tử %d vào mảng.", k); arr = insert(arr, k); System.out.print("\nMảng sau khi chèn: "); show(arr); } /** * sắp xếp mảng số nguyên theo thứ tự tăng dần * * @param arr: mảng các số nguyên */ public static void sortASC(int [] arr) { int temp = arr[0]; for (int i = 0 ; i < arr.length - 1; i++) { for (int j = i + 1; j < arr.length; j++) { if (arr[i] > arr[j]) { temp = arr[j]; arr[j] = arr[i]; arr[i] = temp; } } } } /** * chèn phần tử vào mảng số nguyên tăng dần * sau khi chèn mảng vẫn duy trì thứ tự tăng dần * * @param arr: mảng số nguyên tăng dần * @param k: phần tử chèn vào mảng arr */ public static int [] insert(int [] arr, int k) { int arrIndex = arr.length - 1; int tempIndex = arr.length; int [] tempArr = new int [tempIndex + 1]; boolean inserted = false; for (int i = tempIndex; i >= 0; i--) { if (arrIndex > -1 && arr[arrIndex] > k) { tempArr[i] = arr[arrIndex--]; } else { if (!inserted) { tempArr[i] = k; inserted = true; } else { tempArr[i] = arr[arrIndex--]; } } } return tempArr; } /** * in các phần tử của mảng ra màn hình * * @param arr: mảng các số nguyên */ public static void show(int [] arr) { for (int i = 0; i < arr.length; i++) { System.out.print(arr[i] + " "); } } }Kết quả:
Nhập số phần tử của mảng: 5 Nhập các phần tử của mảng: a[0] = 2 a[1] = 3 a[2] = 4 a[3] = 5 a[4] = 6 Nhập phần tử k = 1 Sắp xếp mảng tăng dần: 2 3 4 5 6 Chèn phần tử 1 vào mảng. Mảng sau khi chèn: 1 2 3 4 5 6 Bài tập Java - Sắp xếp mảng theo thứ tự giảm dần Bài tập Java - Trộn 2 mảng trong javaTừ khóa » Chèn Phần Tử Vào Mảng đã Sắp Xếp
-
Bài 13: Chèn Một Phần Tử Vào Mảng đã Sắp Xếp - YouTube
-
Bài Tập 4.14: Chèn X Vào Mảng Không Làm Mất Tính Sắp Xếp - YouTube
-
[C] Chèn Thêm Phân Tử Vào Dãy Tăng Dần??? - Cộng đồng C Việt
-
Top 13 Chèn Phần Tử Vào Mảng đã Sắp Xếp C
-
Top 13 Chèn Phần Tử Vào Mảng đã Sắp Xếp
-
Thuật Toán Chèn Phần Tử Vào Một Mảng Bằng Code C++
-
CTDL Và Giải Thuật - Chèn Phần Tử Vào Mảng
-
Thêm Và Chèn Phần Tử Vào Mảng Trong C
-
Thêm Và Chèn Phần Tử Vào Mảng Trong C++
-
Chèn Một Phần Tử X Vào Vị Trí K Trong Mảng Trong C++
-
Chèn Thêm Một Phần Tử X, Sao Cho Dãy Vẫn Giữ Nguyên Trật Tự Sắp Xếp
-
Chèn Phần Tử Vào Mảng Trong C# (Phần 1) | 200 Bài Tập C# Có Giải ...