Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

Python - แทรกค่าในลิสต์ที่เรียงแล้วโดยคงลำดับด้วย bisect

Python มีโมดูล bisect สำหรับแทรกค่าในลิสต์ที่เรียงแล้วโดยคงลำดับได้อย่างมีประสิทธิภาพ

ขั้นตอน

  1. Import โมดูล bisect
  2. เตรียมลิสต์และค่าที่ต้องการแทรก
  3. ใช้ bisect.insort(list, element)
  4. พิมพ์ผลลัพธ์

ตัวอย่าง

import bisect

numbers = [10, 23, 27, 32]
element = 25

bisect.insort(numbers, element)
print(numbers)  # [10, 23, 25, 27, 32]

ผลลัพธ์

[10, 23, 25, 27, 32]

สรุป

วิธีวนลูปหาตำแหน่งเองก็ได้แต่ไม่มีประสิทธิภาพเท่า insort ที่ใช้ binary search ภายใน