Tại sao ArrayList lại được ưa chuộng để sử dụng trong nhiều trường hợp hơn LinkedList?

{{FormatNumbertoThousand(model.total_like)}} lượt thích
134 lượt xem
Java master

LinkedList hầu như luôn luôn có một lỗi (về hiệu suất):

  • Nó sử dụng rất nhiều đối tượng bộ nhớ nhỏ và do đó ảnh hưởng đến hiệu suất trong toàn bộ process.
  • Rất nhiều đối tượng nhỏ có hại cho bộ nhớ cache.
  • Bất kỳ hoạt động được lập chỉ mục nào đều yêu cầu chuyển tải, tức là có hiệu suất O (n). Điều này không rõ ràng trong mã nguồn, dẫn đến các thuật toán O (n) chậm hơn so với khi sử dụng ArrayList.
  • Để đạt được hiệu suất tốt là điều khó khăn.
  • Ngay cả khi hiệu suất của big-O giống như ArrayList, nó có thể sẽ chậm hơn đáng kể.
  • Thật khó chịu khi xem LinkedList trong nguồn vì nó có thể là sự lựa chọn sai lầm.
{{login.error}}