Sự phức tạp của các hoạt động cơ bản của thuật toán tìm kiếm và sắp xếp [đóng]


8

Wiki có một mánh gian lận tốt, nhưng nó không liên quan. so sánh hoặc hoán đổi. (mặc dù không có giao dịch hoán đổi thường quyết định độ phức tạp của nó). Vì vậy, tôi đã tạo ra như sau. Là thông tin sau đây là chính xác? Xin vui lòng cho tôi biết nếu có bất kỳ lỗi, tôi sẽ sửa nó.

Sắp xếp chèn:

  • Trường hợp trung bình / Trường hợp xấu nhất: ; xảy ra khi đầu vào đã được sắp xếp theo thứ tự giảm dầnΘ(n2)
  • Trường hợp tốt nhất: ; khi đầu vào đã được sắp xếpΘ(n)
  • Số so sánh: trong trường hợp xấu nhất & trong trường hợp tốt nhấtΘ ( n )Θ(n2)Θ(n)
  • Số lần hoán đổi: trong trường hợp xấu nhất / trung bình & trong trường hợp tốt nhất0Θ(n2)0

Sắp xếp lựa chọn:

  • Trường hợp trung bình / Trường hợp xấu nhất / Trường hợp tốt nhất:Θ(n2)
  • Số so sánh:Θ(n2)
  • Số lần hoán đổi: trong trường hợp xấu nhất / trung bình & trong trường hợp tốt nhất Hầu hết thuật toán yêu cầu N hoán đổi, một khi bạn trao đổi một phần tử vào vị trí, bạn không bao giờ chạm vào nó nữa.0Θ(n)0

Hợp nhất Sắp xếp:

  • Trường hợp trung bình / Trường hợp xấu nhất / Trường hợp tốt nhất: ; hoàn toàn không quan trọng việc đầu vào có được sắp xếp hay khôngΘ(nlgn)
  • Số so sánh: trong trường hợp xấu nhất & trong trường hợp tốt nhất; giả sử chúng ta đang hợp nhất hai mảng kích thước n & m trong đóΘ ( n ) n < mΘ(n+m)Θ(n)n<m
  • Số lần hoán đổi: Không hoán đổi! [nhưng yêu cầu thêm bộ nhớ, không sắp xếp tại chỗ]

Sắp xếp nhanh chóng:

  • Trường hợp xấu nhất: ; xảy ra đầu vào đã được sắp xếpΘ(n2)
  • Trường hợp tốt nhất: ; khi trục chia mảng chính xác một nửaΘ(nlogn)
  • Số so sánh: trong trường hợp xấu nhất & trong trường hợp tốt nhấtΘ ( n l o g n )Θ(n2)Θ(nlogn)
  • Số lần hoán đổi: trong trường hợp xấu nhất & trong trường hợp tốt nhất0Θ(n2)0

Sắp xếp bong bóng:

  • Trường hợp xấu nhất:Θ(n2)
  • Trường hợp tốt nhất: ; trên đã được sắp xếpΘ(n)
  • Số so sánh: trong trường hợp xấu nhất & trường hợp tốt nhấtΘ(n2)
  • Số lần hoán đổi: trong trường hợp xấu nhất & trong trường hợp tốt nhất0Θ(n2)0

Tìm kiếm tuyến tính:

  • Trường hợp xấu nhất: ; khóa tìm kiếm không có mặt hoặc yếu tố cuối cùngΘ(n)
  • Trường hợp tốt nhất: ; yếu tố đầu tiênΘ(1)
  • Số so sánh: trong trường hợp xấu nhất & trong trường hợp tốt nhất1Θ(n)1

Tìm kiếm nhị phân:

  • Trường hợp xấu nhất / Trường hợp trung bình:Θ(logn)
  • Trường hợp tốt nhất: ; khi khóa là yếu tố trung bìnhΘ(1)
  • Số so sánh: trong trường hợp xấu nhất / trung bình & trong trường hợp tốt nhất1Θ(logn)1

  1. Tôi đã chỉ xem xét các thuật toán tìm kiếm và sắp xếp cơ bản.
  2. Giả định ở trên là các thuật toán sắp xếp tạo ra đầu ra theo thứ tự tăng dần
  3. Nguồn: CLRS tuyệt vời và Wiki này

Để thảo luận về giá trị của câu hỏi (loại) này, vui lòng tham gia với chúng tôi trong trò chuyện .
Raphael

1
Đây không phải là một câu hỏi vì vậy là lạc đề.
David Richerby

Tôi đã bỏ phiếu để đóng quá. Điều này có lẽ cũng khó khăn để cứu vãn vì "câu hỏi" khá rộng (chính xác các thuật toán tìm kiếm và sắp xếp cơ bản là gì?)
Juho

Câu trả lời:


-2

Θ(n2)n

n2


1
Θ(n2)O(nlogn)n2

Cảm ơn đã chỉnh sửa nhận xét của tôi, tôi mới biết về SE. Vâng, tôi nên đã rõ ràng hơn về điều này. tôi chỉ chỉnh sửa nhận xét của tôi ở trên. Tôi đã cố gắng nói rằng so sánh trường hợp tốt nhất không thể là 0 trong trường hợp sắp xếp Bubble nó phải n. khi mảng được sắp xếp và bạn đang sử dụng cờ để biểu thị trao đổi trong lần chuyển trước. nếu không có trao đổi trong lần chuyển trước thì mảng đã được sắp xếp rồi nên không cần chạy thêm cho lần đầu tiên, chúng tôi đang thực hiện so sánh. Để sắp xếp nhanh, tôi đang nói về So sánh và hoán đổi không phức tạp về thời gian, trong trường hợp xấu hơn, tất cả các yếu tố được sắp xếp để không cần phải hoán đổi.
Nikhil Mahajan

O(nlogn)O(nlogn)O()O(nlogn)n2O(nlogn) . O(nlogn)
David Richerby

Bạn đúng tôi đã chỉnh sửa câu trả lời của tôi để sắp xếp nhanh.
Nikhil Mahajan
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.