เรามีรายการสตริงและเป้าหมายของเราคือจัดเรียงรายการตามความยาวของสตริงในรายการ เราต้องจัดเรียงสตริงจากน้อยไปหามากตามความยาวของมัน เราสามารถทำได้โดยใช้อัลกอริทึมของเราหรือ Python เมธอดในตัว sort() หรือฟังก์ชัน sorted() พร้อมกุญแจ
มาดูตัวอย่างผลลัพธ์กัน
Input:strings =["hafeez", "aslan", "honey", "appi"]Output:["appi", "aslan", "honey", "hafeez"]
มาเขียนโปรแกรมของเราโดยใช้ sort(key) และ sorted(key) ทำตามขั้นตอนด้านล่างเพื่อให้ได้ผลลัพธ์ที่ต้องการโดยใช้ฟังก์ชัน sorted(key)
อัลกอริทึม
<ก่อน>1. เริ่มต้นรายการสตริง2. เรียงลำดับรายการโดยส่งรายการและคีย์ไปยังฟังก์ชัน sorted (list, key =len) เราต้องส่ง len เป็นคีย์สำหรับฟังก์ชัน sorted() เนื่องจากเรากำลังจัดเรียงรายการตามความยาวของสตริง เก็บรายการผลลัพธ์ในตัวแปร3. พิมพ์รายการที่จัดเรียงตัวอย่าง
## การเริ่มต้นรายการ stringsstrings =["hafeez", "aslan", "honey", "appi"]## โดยใช้ฟังก์ชัน sorted(key) พร้อมกับคีย์ lensorted_list =list(sorted(strings, key =) len))## พิมพ์สตริงหลังจาก sortingprint(sorted_list)
ผลลัพธ์
หากคุณเรียกใช้โปรแกรมข้างต้น คุณจะได้ผลลัพธ์ดังต่อไปนี้
['appi', 'aslan', 'ที่รัก', 'hafeez']
อัลกอริทึม
<ก่อน>1. เริ่มต้นรายการสตริง2. เรียงลำดับรายการโดยส่งคีย์ไปยังวิธี sort(key =len) ของรายการ เราต้องส่ง len เป็นคีย์สำหรับวิธี sort() เนื่องจากเรากำลังจัดเรียงรายการตามความยาวของสตริง sort() วิธีการจะเรียงลำดับรายการในสถานที่ ดังนั้นเราไม่จำเป็นต้องเก็บไว้ในตัวแปรใหม่3. พิมพ์รายการตัวอย่าง
## การเริ่มต้นรายการ stringsstrings =["hafeez", "aslan", "honey", "appi"]## โดยใช้วิธี sort(key) เพื่อจัดเรียงรายการใน placestrings.sort(key =len)# # พิมพ์สตริงหลังจาก sortingprint(สตริง)
ผลลัพธ์
หากคุณเรียกใช้โปรแกรมข้างต้น คุณจะได้ผลลัพธ์ดังต่อไปนี้
['appi', 'aslan', 'ที่รัก', 'hafeez']
บทสรุป
หากคุณมีข้อสงสัยเกี่ยวกับบทช่วยสอน โปรดระบุในส่วนความคิดเห็น