SỐ CHẴN VÀ SỐ LẺ

Báo cáo vấn đềVí dụThuật tân oán nhằm tách bóc số chẵn và số lẻGiải thíchMãMã C ++ nhằm bóc số chẵn với số lẻMã Java nhằm tách bóc số chẵn và số lẻPhân tích độ phức tạpThời gian phức tạpKhông gian phức tạp

Báo cáo vấn đề

Giả sử chúng ta gồm một trong những nguyên mảng. Bài tân oán “Tách số chẵn và số lẻ” tận hưởng sắp xếp lại mảng làm sao cho những số chẵn với lẻ có thể bóc tách thành hai đoạn của mảng. Các số chẵn được chuyển sang phía bên trái của mảng cùng các số lẻ được gửi sang trọng phía bên cần của mảng,

Ví dụ

arr<>= 2,4,5,1,7,8,9,72 4 8 1 7 5 9 7Giải thích: Tất cả các bộ phận chẵn được đặt trước các thành phần lẻ Ttuyệt cũng theo máy tự nhỏng vào đầu vào đang đến.

Bạn đang xem: Số chẵn và số lẻ

Thuật tân oán nhằm tách số chẵn và số lẻ

1. Set i = -1, j = 0.2. While j is not equal to lớn n(where n is the length of the array), 1. Chechồng if arr is even or odd if it is even 1. Do i++, & swap the values of arr và arr respectively. 2. Increase the value of j by 1.3. Print the array.

Giải thích

Chúng tôi đang đưa ra một mảng số nguyên ổn. Chúng tôi được trải đời bố trí lại mảng thành nhì phần. Một phần là số chẵn với phần không giống là số lẻ. Chúng ta nên làm cho điều đó vào mảng sẽ cho. Sao cho các số chẵn sẽ được chuyển lịch sự phía phía bên trái của mảng. Và những số lẻ yêu cầu được gửi lịch sự phía bên yêu cầu của mảng. Đối cùng với điều đó, công ty chúng tôi sẽ soát sổ từng bộ phận của mảng. Nếu nó là số chẵn hoặc không, nếu nó là số chẵn thì họ sẽ kéo nó về phía phía trái của mảng. Sau Khi tiến hành thao tác này cùng với số chẵn. Tất cả các số lẻ đang tự động hóa chuyển lịch sự phía bên đề xuất của mảng.Sau đó, Cửa Hàng chúng tôi vẫn duyệt qua mảng, lấy nhì giá trị chỉ số cho một mảng tuyệt nhất. Một là để đi ngang thường xuyên với một là nhằm lập chỉ mục những số chẵn. Chúng ta vẫn săn sóc qua mảng với mức giá trị là j. Và khám nghiệm xem bao gồm bất kỳ số làm sao là số chẵn hay là không nếu như arr là số chẵn. Sau kia, chúng tôi vẫn hân oán thay đổi nó cùng với arr . Chúng tôi chỉ tăng i khi cực hiếm của mảng được tìm thấy là chẵn. Vì vậy, tuy nhiên họ không kiếm thấy những số chẵn có giá trị, bọn họ sẽ liên tục đội giá trị của j. Và kế tiếp giả dụ bọn họ tìm thấy số chẵn. Sau đó, họ vẫn hoán thù đổi arr cùng với arr biết tới một số lẻ.Nó đang chỉ được hoán đổi trong mảng khi những số chẵn được kiếm tìm thấy. Và tất nhiên, nó sẽ được hân oán đổi với một số trong những lẻ hoặc cùng với chính nó. Sau toàn bộ các làm việc này, chúng tôi đã in ra mảng tác dụng.

Xem thêm: Dấu Hiệu Bào Gỗ Là Gì Mới Trong Chẩn Đoán Và Điều Trị Thoái Hóa Khớp

*

Mã C ++ để tách bóc số chẵn và số lẻ

#includeusing namespace std;void getArrangedEvenOdd(int arr<>, int n){ int i = -1, j = 0; while (j != n) if (arr % 2 == 0) i++; swap(arr, arr); j++; for (int i = 0; i 2 4 8 1 7 5 9 7

Mã Java nhằm bóc số chẵn với số lẻ

public class rearrangeEvenOdd{ public static void getArrangedEvenOdd( int arr<>, int n) { int i = -1, j = 0; while (j != n) if (arr % 2 == 0) i++; int temp = arr; arr = arr; arr = temp; j++; for (int k = 0; k 2 4 8 1 7 5 9 7

Phân tích độ phức tạp

Thời gian phức tạp

O (n) Ở đâu “N” là số phần tử vào mảng. Ở phía trên chúng ta vẫn chăm chút qua mảng cho tới khi chỉ số j không bằng N. Điều đó tức là chúng ta đã xem xét qua mảng một lần. Và cho nên vì vậy độ tinh vi thời gian đường tính.

Không gian phức tạp

O (1) vị không buộc phải thêm không gian. Bản thân thuật toán chỉ lấy không khí không thay đổi nhưng tổng thể chương trình rước không gian tuyến đường tính.
Danh mục Câu hỏi chất vấn mảng Tag Lịch sự, Mảng, Dễ dàng, LinkedIn, MakeMyTrip, Paytm, Phân loạibài xích đưa hướng