30/09/2018, 16:50

Cho hỏi về thuật toán tìm kiếm từ điển

Cho mình hỏi về thuật toán tìm kiểm từ điển (tìm từ trong từ điển) từ 1 file txt có cấu trúc.
Đồ án hồi trước của một nhóm ở lớp mình có làm cái này(tìm kiếm mã số bài hát karaoke), hình như là dùng thuật toán nhị phân. Giờ tò mò quá nên hỏi thử xem là dùng cách gì. Ai có kinh nghiệm thì giúp với nhé

X viết 19:00 ngày 30/09/2018

đang làm android cơ bản nhưng quay qua code dạo lại một bài C++ này xem cho vui

Minh Hoàng viết 18:54 ngày 30/09/2018

Tìm thế nào vậy ta, có gì bí ẩn trong cái map vậy
nghe thầy bảo là chia nhánh ra nữa, giảm thời gian hơn tìm kiếm tuần tự

Itachi Citus viết 18:58 ngày 30/09/2018

Map quản lý key theo cây tìm kiếm nhị phân nên thời gian tìm kiếm gấp theo hàm mũ thời gian tìm kiếm tuần tự.
http://en.cppreference.com/w/cpp/container/map
Theo cái này thì nó cài đặt cây đỏ đen (red-black tree).

Search, removal, and insertion operations have logarithmic complexity. Maps are usually implemented as red-black trees

Lập Trình Sư viết 18:58 ngày 30/09/2018

thường thì dùng Hash, ngoài ra có thể dùng MapReduce

Nguyễn Minh Dũng viết 19:02 ngày 30/09/2018

Dùng unordered_map đi, nếu em dùng C++. Về khái niệm map thì mình có một cặp key-value. Ví dụ như nhập một từ vào thì mình cần giải nghĩa của từ đó.

key - từ nhập vào
value - giải nghĩa của từ đó

Cái này gọi là một pair<k,v>. std C++ đã có sẵn unordered_map rồi, theo đó mà dùng ^^

Bài liên quan
0