Thuật toán tìm kiếm

Tìm hiểu các phương pháp để tìm kiếm phần tử cụ thể trong tập dữ liệu

Linear Search

Dễ

Linear Search kiểm tra từng phần tử trong mảng tuần tự cho đến khi tìm thấy phần tử đích hoặc đến cuối mảng. Đây là thuật toán tìm kiếm đơn giản nhất ...

Time:
O(n)
Space:
O(1)

Best for:

Tập dữ liệu chưa được sắp...Tập dữ liệu nhỏ khi tính ...+2 more
Click to visualize

Binary Search

Trung Bình

Binary Search hoạt động trên các mảng đã sắp xếp bằng cách liên tục chia không gian tìm kiếm làm đôi. Nó so sánh mục tiêu với phần tử giữa và loại bỏ ...

Time:
O(log n)
Space:
O(1)

Best for:

Tập dữ liệu đã được sắp x...Tập dữ liệu lớn yêu cầu t...+2 more
Click to visualize

Jump Search

Trung Bình

Jump Search là thuật toán tìm kiếm cho mảng đã sắp xếp bằng cách nhảy qua các khối có kích thước cố định (thường là √n) thay vì kiểm tra từng phần tử....

Time:
O(√n)
Space:
O(1)

Best for:

Tập dữ liệu đã sắp xếp vớ...Khi Binary Search quá phứ...+2 more
Click to visualize

Interpolation Search

Khó

Interpolation Search là cải tiến của Binary Search cho mảng đã sắp xếp với dữ liệu phân bố đều. Thay vì luôn chia đôi, nó ước tính vị trí của giá trị ...

Time:
O(log log n)
Space:
O(1)

Best for:

Dữ liệu đã sắp xếp và phâ...Tập dữ liệu lớn với phân ...+2 more
Click to visualize

Về thuật toán Thuật toán tìm kiếm

Bạn sẽ học được gì:

  • Cách các thuật toán khác nhau tiếp cận cùng một vấn đề
  • Sự đánh đổi giữa độ phức tạp thời gian và không gian
  • Khi nào nên sử dụng từng thuật toán trong thực tế
  • Hiểu biết trực quan từng bước một cách chi tiết

Tính năng tương tác:

  • Thực thi hoạt hình từng bước một cách chi tiết
  • Tốc độ hoạt hình có thể điều chỉnh
  • Làm nổi bật code đồng bộ với trực quan hóa
  • Nhập dữ liệu tùy chỉnh và tạo mảng