Danh sách

Kiểm tra chuỗi đảo chữ (Valid Anagram)

Dễ
Bảng Băm & Tập Hợp (Hash Map & Hash Set) 800ms 128MB

Cho hai chuỗi s và t. Hãy trả về true nếu t là một chuỗi đảo chữ (anagram) của s, ngược lại trả về false.

Một chuỗi đảo chữ là chuỗi được tạo thành bằng cách sắp xếp lại các ký tự của một chuỗi khác, sử dụng tất cả các ký tự gốc đúng một lần.

Ví dụ 1:

Input: s = "anagram", t = "nagaram"
Output: true

Ví dụ 2:

Input: s = "rat", t = "car"
Output: false
Định Dạng Đầu Vào (Input)
Dòng 1: Chuỗi s
Dòng 2: Chuỗi t
Định Dạng Đầu Ra (Output)
In ra true nếu là anagram, ngược lại false
Ràng Buộc (Constraints)
  • 1 <= s.length, t.length <= 5 * 10^4
  • s và t chỉ gồm chữ cái tiếng Anh in thường.
Ví Dụ Kiểm Thử Mẫu
Ví dụ 1:
Input:
"anagram"
"nagaram"
Output:
true
Giải thích: Các ký tự trùng khớp số lượng
Ví dụ 2:
Input:
"rat"
"car"
Output:
false
Giải thích: Khác ký tự
Gợi ý được sắp xếp theo cấp độ tiến dần. Hãy mở từng gợi ý khi bạn thực sự cần thêm định hướng.

Kỹ thuật Mảng Đếm Tần Suất 26 Ký Tự O(n)

Nếu độ dài 2 chuỗi khác nhau -> false. Dùng mảng đếm kích thước 26: Tăng đếm cho mỗi ký tự trong s và giảm đếm cho mỗi ký tự trong t. Sau đó kiểm tra mọi phần tử trong mảng đều bằng 0.

Vui lòng đăng nhập

Đăng nhập tài khoản học viên để xem lịch sử nộp bài của bạn.

Đăng nhập
Ctrl + Enter: Chạy thử
Dữ liệu đầu vào (Input):
"anagram" "nagaram"
Kết quả kỳ vọng (Expected Output):
true
Dữ liệu đầu vào (Input):
"rat" "car"
Kết quả kỳ vọng (Expected Output):
false
Nhập STDIN của bạn (Mỗi dòng một tham số):

Bấm Chạy thử để kiểm tra các bộ test mẫu hoặc Nộp bài để chấm điểm chính thức.

Đang gửi mã và thực thi trên Sandbox Engine...
Nhấn Ctrl+Enter để chạy

vừa nâng cấp PRO khóa 1 phút trước   Tìm hiểu khóa học