Tôi có một danh sách sắp xếp các số nguyên, L và tôi có một giá trị X mà tôi muốn chèn vào danh sách sao cho thứ tự của L được duy trì. Tương tự như vậy, tôi muốn nhanh chóng tìm và loại bỏ các trường hợp đầu tiên của X.Chèn và xóa vào/từ danh sách được sắp xếp trong Python
Câu hỏi:
- Làm thế nào để sử dụng các module bisect để làm phần đầu tiên, nếu có thể?
- L.remove (X) có phải là cách hiệu quả nhất để thực hiện phần thứ hai không? Liệu Python có phát hiện ra rằng danh sách đã được sắp xếp và tự động sử dụng một quá trình loại bỏ logarit?
Ví dụ mã nỗ lực:
i = bisect_left(L, y)
L.pop(i) #works
del L[bisect_left(L, i)] #doesn't work if I use this instead of pop
exmaple của bạn chẳng có ý nghĩa; 'i' là một chỉ mục thành' L', nhưng 'L.pop (i)' loại bỏ một giá trị * * khỏi danh sách. –