Cách sắp xếp một mảng các số nguyên một cách chính xác

Cach Sap Xep Mot Mang Cac So Nguyen Mot Cach Chinh Xac



Mảng là đối tượng lưu trữ nhiều giá trị trong một biến duy nhất. Nó có thể lưu trữ nhiều loại dữ liệu, bao gồm số nguyên, chuỗi, v.v. Các nhà phát triển đôi khi cần sắp xếp dữ liệu để dễ sử dụng hơn. Để sắp xếp các phần tử mảng, bạn có thể sắp xếp chúng theo thứ tự tăng dần hoặc giảm dần.

Hướng dẫn này sẽ mô tả các phương pháp để sắp xếp chính xác một mảng các số nguyên.







Làm thế nào để sắp xếp một mảng các số nguyên một cách chính xác?

Để sắp xếp chính xác một mảng các số nguyên, hãy sử dụng các phương pháp sau:



Phương pháp 1: Sắp xếp chính xác một mảng các số nguyên bằng hàm so sánh trong phương thức sort()

Để sắp xếp chính xác một mảng các số nguyên, hãy sử dụng hàm so sánh trong “ loại() ' phương pháp. Hàm so sánh so sánh các giá trị số nguyên và sắp xếp chúng theo vị trí của chúng. Như chúng ta đã biết, phương thức sort() sắp xếp các phần tử theo thứ tự từ điển hoặc bảng chữ cái, điều này có thể không tạo ra kết quả mong muốn cho một mảng số.



cú pháp





Thực hiện theo cú pháp đã cho để sắp xếp các mảng số nguyên với sự trợ giúp của hàm so sánh:

loại ( hàm số ( x,y ) { trở lại x-y } ) )



Cú pháp trên:

  • Giá trị trả về của hàm so sánh nhỏ hơn 0, “ x ” sẽ được đặt trước “ Y ”.
  • Nếu giá trị mà hàm trả về lớn hơn 0 có nghĩa là một số dương, thì “ Y ” sẽ được đặt trước “ x ”.
  • Không phần tử nào thay đổi nếu (x – y == 0).

Trước tiên hãy xem một ví dụ khi mảng được sắp xếp bằng phương thức sort() duy nhất.

Thí dụ

Tạo một mảng các số nguyên chứa các số nguyên âm cũng như dương:

mảng var = [ - số 8 , - 4 , - 12 , - 0 , 23 , 4 , 16 , số 8 , 10 , 14 ] ;

Gọi phương thức sort():

bảng điều khiển.log ( mảng.sort ( ) ) ;

Có thể thấy rằng các số nguyên được sắp xếp nhưng không theo bất kỳ thứ tự cụ thể nào (nó không theo thứ tự tăng dần cũng như giảm dần):

Bây giờ, hãy sử dụng hàm so sánh trong phương thức sort() để sắp xếp các phần tử theo thứ tự tăng dần:

bảng điều khiển.log ( mảng.sort ( hàm số ( x,y ) { trở lại x-y } ) ) ;

Có thể thấy rằng các phần tử mảng được sắp xếp theo thứ tự tăng dần:

Nếu bạn muốn sắp xếp mảng theo thứ tự giảm dần, hãy thay đổi hàm so sánh:

bảng điều khiển.log ( mảng.sort ( hàm số ( x,y ) { trở lại y-x } ) ) ;

đầu ra

Phương pháp 2: Sắp xếp chính xác một mảng các số nguyên bằng Sắp xếp bong bóng

Một cách tiếp cận khác để sắp xếp mảng số nguyên là kỹ thuật sắp xếp. Ở đây, “ sắp xếp bong bóng ' sẽ được thảo luận. Đối với sắp xếp bong bóng, hãy sử dụng “ trong khi ” sẽ lặp qua mảng cho đến hết độ dài của nó và sắp xếp mọi phần tử dựa trên điều kiện. Sắp xếp bong bóng kiểm tra hai yếu tố/mục gần giống nhau và hoán đổi chúng cho đến khi đạt được thứ tự yêu cầu.

Thí dụ

Tạo biến “ tôi ”,” j, ' và ' nhiệt độ ” và khởi tạo“ tôi = 0 ”:

cho phép tôi = 0 , d, nhiệt độ;

Để so sánh các yếu tố và sắp xếp chúng theo vị trí thực tế của chúng, hãy sử dụng hai nút “ trong khi ” vòng lặp. Vòng lặp đầu tiên lặp lại mảng cho đến khi đạt đến độ dài của nó, trong khi vòng lặp thứ hai kiểm tra các phần tử và hoán đổi chúng dựa trên các điều kiện:

trong khi ( tôi < mảng.length ) {

j = tôi + một ;
trong khi ( j < mảng.length ) {
nếu ( mảng [ j ] < mảng [ tôi ] ) {
tạm thời = mảng [ Tôi ] ;
mảng [ tôi ] = mảng [ j ] ;
mảng [ j ] = nhiệt độ;
}
j++;
}
tôi ++;
}

In mảng đã sắp xếp trên bàn điều khiển:

bảng điều khiển.log ( mảng ) ;

đầu ra

Để sắp xếp một mảng theo thứ tự giảm dần bằng sắp xếp bong bóng, hãy thay đổi điều kiện:

mảng [ j ] > mảng [ tôi ]

Hoặc là

mảng [ tôi ] < mảng [ j ]

Đó là tất cả về việc sắp xếp mảng số nguyên trong JavaScript.

Phần kết luận

Để sắp xếp mảng số nguyên một cách chính xác, hãy sử dụng “ chức năng so sánh ” trong phương thức sort() hoặc kỹ thuật sắp xếp được gọi là “ sắp xếp bong bóng ”. Hàm so sánh trong phương thức sort() so sánh các số nguyên trong một mảng và sắp xếp chúng theo vị trí của chúng. Tương tự, Sắp xếp bong bóng hai kiểm tra hai phần tử/mục gần giống nhau và hoán đổi chúng cho đến khi đạt được thứ tự yêu cầu. Hướng dẫn này đã mô tả các phương pháp để sắp xếp chính xác một mảng các số nguyên.