วิธีเรียงลำดับอาร์เรย์ของจำนวนเต็มอย่างถูกต้อง

Withi Reiyng Ladab Xarrey Khxng Canwntem Xyang Thuk Txng



อาร์เรย์เป็นวัตถุที่เก็บค่าหลายค่าไว้ในตัวแปรเดียว สามารถเก็บข้อมูลได้หลายประเภท รวมทั้งจำนวนเต็ม สตริง และอื่นๆ บางครั้งนักพัฒนาจำเป็นต้องจัดระเบียบข้อมูลเพื่อให้ใช้งานได้ง่ายขึ้น สำหรับการจัดเรียงองค์ประกอบอาร์เรย์ คุณสามารถจัดระเบียบจากน้อยไปหามากหรือจากมากไปน้อย

บทช่วยสอนนี้จะอธิบายวิธีการเรียงลำดับอาร์เรย์ของจำนวนเต็มอย่างถูกต้อง







วิธีการเรียงลำดับอาร์เรย์ของจำนวนเต็มอย่างถูกต้อง?

ในการเรียงลำดับอาร์เรย์ของจำนวนเต็มอย่างถูกต้อง ให้ใช้วิธีการต่อไปนี้:



วิธีที่ 1: เรียงลำดับอาร์เรย์ของจำนวนเต็มอย่างถูกต้องโดยใช้ฟังก์ชันเปรียบเทียบในวิธีการ sort()

สำหรับการเรียงลำดับอาร์เรย์ของจำนวนเต็มอย่างถูกต้อง ให้ใช้ฟังก์ชันการเปรียบเทียบใน ' เรียงลำดับ() ' กระบวนการ. ฟังก์ชันเปรียบเทียบจะเปรียบเทียบค่าจำนวนเต็มและจัดเรียงตามตำแหน่ง ดังที่เราทราบ วิธีการ sort() จะเรียงลำดับองค์ประกอบตามลำดับอักษรหรือตามตัวอักษร ซึ่งอาจไม่ได้ผลลัพธ์ที่ต้องการสำหรับอาร์เรย์ของตัวเลข



ไวยากรณ์





ปฏิบัติตามไวยากรณ์ที่กำหนดสำหรับการเรียงลำดับอาร์เรย์จำนวนเต็มด้วยความช่วยเหลือของฟังก์ชันเปรียบเทียบ:

เรียงลำดับ ( การทำงาน ( x,ย ) { กลับ x-y } ) )



ไวยากรณ์ข้างต้น:

  • ค่าที่ส่งคืนของฟังก์ชันการเปรียบเทียบมีค่าน้อยกว่าศูนย์ “ x ” จะวางไว้หน้า “ วาย '.
  • ถ้าค่าที่ฟังก์ชันส่งกลับมากกว่าศูนย์หมายความว่าเป็นจำนวนบวก ฟังก์ชัน “ วาย ” จะวางไว้หน้า “ x '.
  • ไม่มีองค์ประกอบใดที่จะเปลี่ยนแปลงถ้า (x – y == 0)

ก่อนอื่นมาดูตัวอย่างเมื่ออาร์เรย์ถูกจัดเรียงโดยใช้เมธอด sort() เท่านั้น

ตัวอย่าง

สร้างอาร์เรย์ของจำนวนเต็มที่ประกอบด้วยจำนวนเต็มลบและจำนวนเต็มบวก:

var อาร์เรย์ = [ - 8 , - 4 , - 12 , - 0 , 23 , 4 , 16 , 8 , 10 , 14 ] ;

โทร sort() วิธีการ:

คอนโซล.ล็อก ( array.sort ( ) ) ;

จะเห็นได้ว่าจำนวนเต็มถูกจัดเรียง แต่ไม่ได้อยู่ในลำดับเฉพาะใด ๆ (ไม่ได้เรียงลำดับจากน้อยไปหามากหรือจากมากไปน้อย):

ตอนนี้ใช้ฟังก์ชันการเปรียบเทียบใน sort() วิธีการเรียงลำดับองค์ประกอบจากน้อยไปหามาก:

คอนโซล.ล็อก ( array.sort ( การทำงาน ( x,ย ) { กลับ x-y } ) ) ;

สามารถสังเกตได้ว่าองค์ประกอบอาร์เรย์จะเรียงลำดับจากน้อยไปหามาก:

หากคุณต้องการเรียงลำดับอาร์เรย์จากมากไปน้อย ให้เปลี่ยนฟังก์ชันการเปรียบเทียบ:

คอนโซล.ล็อก ( array.sort ( การทำงาน ( x,ย ) { กลับ y-x } ) ) ;

เอาต์พุต

วิธีที่ 2: เรียงลำดับอาร์เรย์ของจำนวนเต็มอย่างถูกต้องโดยใช้ Bubble Sort

อีกวิธีหนึ่งสำหรับการเรียงลำดับอาร์เรย์จำนวนเต็มคือเทคนิคการเรียงลำดับ ที่นี่ “ เรียงฟอง ” จะกล่าวถึง สำหรับการเรียงลำดับฟอง ให้ใช้ปุ่ม “ ในขณะที่ ” ลูปที่จะวนซ้ำในอาร์เรย์จนสุดความยาวและจัดเรียงองค์ประกอบทั้งหมดตามเงื่อนไข การจัดเรียงแบบฟองจะตรวจสอบองค์ประกอบ/รายการที่ใกล้เคียงสองรายการและสับเปลี่ยนจนกว่าจะได้ลำดับที่ต้องการ

ตัวอย่าง

สร้างตัวแปร “ ผม ”,” เจ ' และ ' อุณหภูมิ ” และเริ่มต้น “ ฉัน = 0 ”:

ปล่อย ผม = 0 , d, อุณหภูมิ;

สำหรับการเปรียบเทียบองค์ประกอบและจัดเรียงองค์ประกอบในตำแหน่งจริง ให้ใช้สอง ' ในขณะที่ ” ลูป ลูปแรกจะวนซ้ำอาร์เรย์จนกว่าจะถึงความยาว ในขณะที่ลูปที่สองจะตรวจสอบองค์ประกอบและสลับองค์ประกอบตามเงื่อนไข:

ในขณะที่ ( ผม < อาร์เรย์ความยาว ) {

เจ = ฉัน + หนึ่ง ;
ในขณะที่ ( เจ < อาร์เรย์ความยาว ) {
ถ้า ( อาร์เรย์ [ เจ ] < อาร์เรย์ [ ผม ] ) {
อุณหภูมิ = อาร์เรย์ [ ฉัน ] ;
อาร์เรย์ [ ผม ] = อาร์เรย์ [ เจ ] ;
อาร์เรย์ [ เจ ] = อุณหภูมิ;
}
j ++;
}
ฉัน ++;
}

พิมพ์อาร์เรย์ที่เรียงลำดับบนคอนโซล:

คอนโซล.ล็อก ( อาร์เรย์ ) ;

เอาต์พุต

สำหรับการเรียงลำดับอาร์เรย์จากมากไปน้อยโดยใช้การเรียงลำดับแบบฟอง ให้เปลี่ยนเงื่อนไข:

อาร์เรย์ [ เจ ] > อาร์เรย์ [ ผม ]

หรือ

อาร์เรย์ [ ผม ] < อาร์เรย์ [ เจ ]

นั่นคือทั้งหมดที่เกี่ยวกับการเรียงลำดับอาร์เรย์จำนวนเต็มใน JavaScript

บทสรุป

สำหรับการเรียงลำดับอาร์เรย์จำนวนเต็มอย่างถูกต้อง ให้ใช้ปุ่ม “ ฟังก์ชั่นเปรียบเทียบ ” ในวิธีการ sort() หรือเทคนิคการเรียงลำดับที่เรียกว่า “ เรียงฟอง '. ฟังก์ชันเปรียบเทียบใน sort() วิธีการเปรียบเทียบจำนวนเต็มในอาร์เรย์และเรียงลำดับตามตำแหน่ง ในทำนองเดียวกัน Bubble Sort two จะตรวจสอบองค์ประกอบ/รายการที่ใกล้เคียงกันสองรายการและสับเปลี่ยนจนกว่าจะได้ลำดับที่ต้องการ บทช่วยสอนนี้อธิบายวิธีการเรียงลำดับอาร์เรย์ของจำนวนเต็มอย่างถูกต้อง