01/10/2018, 17:24
Xét 2 xâu tương đương
Hai xâu được gọi là tương đương nếu như ta có thể thay đổi thứ tự trong một xâu để có được xâu còn lại.
M.n cho e xin gợi ý để xét 2 xâu tương đương vs ạ. Thanks.
Bài liên quan
Ủa, làm sao mà bài gốc lại bị khoá vậy? Bạn đăng lại câu hỏi cho mọi người nhìn nhé.
Quay lại câu hỏi của bạn:
Ví dụ minh hoạ:
Xâu 1: tranhoan -> Xâu 3 có được từ sắp xếp xâu 1: aahnnort
Xâu 2: hoantran -> Xâu 3 có được từ sắp xếp xâu 2: aahnnort
=> Xâu 1 tương đương Xâu 2
Xâu 1: tranhoan -> Xâu 3 có được từ sắp xếp xâu 1: aahnnort
Xâu 2: hosntran -> Xâu 3 có được từ sắp xếp xâu 2: ahnnorst
=> Xâu 1 không tương đương Xâu 2
đếm số ký tự từng loại của mỗi xâu. Nếu chúng bằng nhau hết thì tương đương.
Ví dụ “abb” và “bab” đều có 1 chữ a và 2 chữ b, vậy thì nó biến đổi được cho nhau và tương đương.
Có thể dùng HashMap để lưu
Đếm số lượng kí tự, nếu tất cả các kí tự đều có số lần xuất hiện bằng nhau thì tương đương.
thực sự nếu làm như v e nghĩ là liệu n có làm bài toán khó hơn ko a?
Không khó, vì hàm sắp xếp có sẵn trong C++ rồi. Nếu không muốn dùng hàm sắp xếp có sẵn, có thể lên mạng tìm rất nhiều code sắp xếp khác nhau.
Việc lưu lại xem mỗi phần tử xuất hiện bao nhiêu lần nó không đơn giản như bạn nghĩ đâu :))
Ở trên có người nói về HashMap. Nó là một cấu trúc phức tạp mà bạn chưa đủ khả năng để hiểu. Đừng vội dùng.
thanks anh ạ zzzzzzzz
char có 256 giá trị thôi mà làm 1 cái mảng 256 phần tử thay cho hashmap mà đếm
sort thì viết code đơn giản hơn nhưng big-O lớn hơn