Computer >> Máy Tính >  >> Lập trình >> Lập trình

Phân tích khấu hao

Phân tích khấu hao

Phân tích này được sử dụng khi hoạt động không thường xuyên rất chậm, nhưng hầu hết các hoạt động đang thực hiện rất thường xuyên đều nhanh hơn. Cấu trúc dữ liệu mà chúng tôi cần phân tích khấu hao cho Bảng băm, Tập rời rạc, v.v.

Trong Hash-table, phần lớn độ phức tạp của thời gian tìm kiếm là O (1), nhưng đôi khi nó thực hiện các phép toán O (n). Khi chúng ta muốn tìm kiếm hoặc chèn một phần tử trong bảng băm trong hầu hết các trường hợp, nhiệm vụ đó là thời gian cố định, nhưng khi xảy ra va chạm, nó cần các thao tác gấp O (n) lần để giải quyết xung đột.

Phương pháp tổng hợp

Phương pháp tổng hợp được sử dụng để tìm tổng chi phí. Nếu chúng ta muốn thêm một loạt dữ liệu, thì chúng ta cần tìm chi phí phân bổ theo công thức này.

Đối với một chuỗi n hoạt động, chi phí là -

Phân tích khấu hao

Ví dụ về Phân tích khấu hao

Đối với một mảng động, các mục có thể được chèn vào một chỉ mục nhất định trong thời gian O (1). Nhưng nếu chỉ mục đó không có trong mảng, nó sẽ không thể thực hiện tác vụ trong thời gian liên tục. Đối với trường hợp đó, ban đầu nó tăng gấp đôi kích thước của mảng, sau đó sẽ chèn phần tử vào nếu có chỉ mục.

Phân tích khấu hao


Đối với mảng động, let =cost of ith chèn.

Phân tích khấu hao