Hàm xóa 1 phần tử trong mảng

  -  

Trong bài biết này, chúng ta sẽ cùng nhau thảo luận về tìm kiếm, thêm. xoá phần tử trong mảng chưa được sắp xếp.

Bạn đang xem: Hàm xóa 1 phần tử trong mảng

Tìm kiếm

Một mảng chưa được sắp xếp, chúng ta có thể thực hiện bằng cách tìm duyệt hết tất cả các phần tử của mảng cho đến khi gặp được phần tử cần tìm.

Cho mảng arr<> = {1,7,5,6,2,9,8,-1}, tìm vị trí của phần tử có giá trị 5 trong mảng.

Xem thêm: Bán Nhà Riêng Tại Đường 61, Quận 9 Giá Rẻ Tháng 05/2021, Mua Bán Nhà Đất Đường 61, Quận 9, Tphcm Giá Rẻ

*

public class Main { public static void main(String<> args) { int<> arr = {1,7,5,6,2,9,8,-1}; int x = 5; int pos = searchElement(arr, x); if (pos == -1){ System.out.println("Khong tim thay"); } else { System.out.println("Tim thay tai vi tri: " + pos); } } /** *
Param array va X * return index<0, n - 1> neu tim thay * return -1 neu khong tim thay */ static int searchElement(int<> arr, int x) { for(int i = 0; i Output:Tim thay taivi tri: 2

Thêm

Một mảng chưa được sắp xếp, khi thêm chúng ta chỉ cần thêm cuối mảng nếu không có yêu cầu gì thêm.

*

public class Main { public static void main(String<> args) { int size = 20; // Suc chua cua mang int<> arr = new int; arr<0> = 1; arr<1> = -1; arr<2> = 6; arr<3> = 5; arr<4> = 3; int n = 5; // So luong phan tu trong mang hien tai int x = 10; System.out.print("Truoc khi them: "); for (int i = 0; i = size) { return n; } // them X vao vi tri cuoi cua mang arr<5> = x; return n + 1; // tang so luong phan tu cua mang them 1 }}Output:Before Insertion: 1 -1 6 5 3 After Insertion: 1 -1 6 5 3 10

Vậy nếu chúng ta cần thêm phần tử x vào vị trí postion trong mảng thì phải làm sao?

*

Nhìn vào ảnh trên, ta cần dịch chuyển 1 đơn vị cho tất cả các phần tử từ vị trí postion trở về sau, sau đó chèn phần tử cần thêm vào vị trí postion.

Xem thêm: Tùy Theo Tính Chất Công Việc Tiếng Anh Là Gì Vậy ? 100 Từ Vựng Tiếng Anh Về Nghề Nghiệp

static int insertToPos(int<> arr, int size, int n, int x, int postision) { // Neu so luong phan tu lon hon hoac bang suc chua cua mang thi khong the them if (n >= size) { return n; } // vi tri them phan tu phai thuoc khoang<0, n> if (postision n) { return n; } for(int i = n; i > postision; i--) { arr = arr; } // them X vao vi tri postision cua mang arr = x; return n + 1; // tang so luong phan tu cua mang them 1 }

Xoá

Để xoá một phần tử trong mảng, đầu tiên chúng ta cần tìm vị trí của phần tử cần xoá nằm trong mảng(pos), sau đó tiến hàng dịch chuyển các phần tử từ vị trí pos + 1 sang trái.

public class Main { public static void main(String<> args) { int size = 20; // Suc chua cua mang int<> arr = new int; arr<0> = 1; arr<1> = -1; arr<2> = 6; arr<3> = 5; arr<4> = 3; int n = 5; // So luong phan tu trong mang hien tai System.out.print("Truoc khi xoa: "); for (int i = 0; i Output:Truoc khi xoa: 1 -1 6 5 3 Sau khi xoa : 1 -1 5 3