cuốn sách gpt4 ai đã làm

Độ phức tạp của việc duy trì danh sách đã sắp xếp so với việc chèn tất cả các giá trị rồi sắp xếp

In lại Tác giả: Taklimakan Thời gian cập nhật: 2023-11-03 03:09:41 26 4
mua khóa gpt4 Nike

Độ phức tạp về thời gian và không gian của việc duy trì danh sách các số theo thứ tự được sắp xếp có giống như việc chèn chúng không (tức là chèn nó từ số đầu tiên xuất hiện, số thứ hai xuất hiện, bạn chèn nó theo thứ tự được sắp xếp, v.v.) khi chúng xuất hiện sau đó Sắp xếp sau khi tất cả các thao tác chèn được thực hiện?

Làm thế nào để tôi đưa ra quyết định này? Bạn có thể chứng minh độ phức tạp về thời gian và không gian cho các phần tử "n" không?

Tôi đang suy nghĩ về khía cạnh danh bạ điện thoại, sự khác biệt giữa việc lưu trữ nó trong bộ sưu tập và trình bày dữ liệu đã sắp xếp cho người dùng mỗi khi họ chèn một bản ghi vào danh bạ điện thoại so với việc lưu trữ các bản ghi danh bạ điện thoại theo thứ tự được sắp xếp trong một bộ cây. Phần tử n sẽ là gì?

câu trả lời hay nhất

Mỗi lần bạn chèn một danh sách đã sắp xếp và giữ cho nó được sắp xếp, bạn phải thực hiện các phép so sánh O(logn) để tìm vị trí đặt nó, nhưng O(n) sẽ di chuyển để đặt nó. Vì chúng ta đang chèn n phần tử nên đây là O(n^2). Tuy nhiên, tôi nghĩ nếu bạn sử dụng cấu trúc dữ liệu được thiết kế để chèn dữ liệu được sắp xếp (như cây nhị phân) và sau đó thực hiện chuyển đổi ở cuối để chuyển đổi nó thành danh sách/mảng thì đó chỉ là O(nlogn). Mặt khác, việc sử dụng cấu trúc dữ liệu phức tạp hơn như vậy sẽ sử dụng thêm khoảng O(n), trong khi tất cả các phương pháp khác có thể được thực hiện tại chỗ và không sử dụng thêm không gian.

Mỗi lần chèn vào danh sách chưa sắp xếp là O(1). Sắp xếp nó cuối cùng là O (nlogn). Điều này có nghĩa tổng thể nó là O(nlogn).

Tuy nhiên, nếu bạn không định liệt kê nhiều phần tử (1000 hoặc ít hơn), thì Big O có thể không quan trọng và bạn nên tập trung vào thứ gì đó chạy nhanh hơn cho các tập dữ liệu nhỏ, hoặc nếu không. Đây là vấn đề về hiệu suất, Không cần phải lo lắng gì cả.

Về thuật toán - sự phức tạp của việc duy trì một danh sách được sắp xếp so với việc chèn tất cả các giá trị rồi sắp xếp, chúng tôi đã tìm thấy một câu hỏi tương tự trên Stack Overflow: https://stackoverflow.com/questions/17268218/

26 4 0
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress