Prompt miễn phí
Tối ưu vòng lặp lồng nhau bằng cấu trúc tra cứu
Biến đoạn code lặp chậm thành phiên bản dùng map, set hoặc cấu trúc tra cứu phù hợp, kèm phân tích độ phức tạp mới.
Prompt dùng để làm gì?
Biến đoạn code lặp chậm thành phiên bản dùng map, set hoặc cấu trúc tra cứu phù hợp, kèm phân tích độ phức tạp mới.
Điền thông tin của bạn
Prompt
Input mẫu
"doan_code_hien_tai": "for a in listA: for b in listB: if a.id == b.id: ...",
"cau_truc_du_lieu_goi_y": "map theo id",
"ngon_ngu_muc_tieu": "JavaScript",
"gioi_han_bo_nho": "tăng không quá 2 lần so với bản gốc",
"gioi_han_thoi_gian": "giảm thời gian chạy ít nhất một bậc độ lớn"
}
Output mẫu
"optimized_approach": [
"xây map từ listB theo id",
"duyệt listA một lần và tra cứu O(1) trung bình"
],
"complexity": "từ O(n*m) xuống O(n+m)",
"notes": [
"giữ nguyên thứ tự kết quả theo listA",
"chấp nhận tăng bộ nhớ để đổi lấy tốc độ"
]
}
Cách sử dụng
Giải thích cấu trúc
- Role
- Vai trò là chuyên gia tối ưu và tái cấu trúc thuật toán.
- Context
- Bối cảnh là mã có vòng lặp lồng nhau chậm và cần thay bằng cấu trúc tra cứu hiệu quả hơn.
- Task
- Nhiệm vụ là phân tích, viết lại và giải thích độ phức tạp cũng như đánh đổi.
- Constraints
- Không làm đổi kết quả nghiệp vụ; phải tôn trọng giới hạn bộ nhớ/thời gian nếu có.
- Output
- Đầu ra gồm phiên bản tối ưu, phân tích phức tạp và lưu ý tương thích.
Mẹo sử dụng
- Nếu dữ liệu có khóa duy nhất, ưu tiên map thay vì set.
- Hãy kiểm tra xem việc đổi cấu trúc có làm mất thứ tự đầu ra không.
- Nêu rõ tiền xử lý dữ liệu nếu chỉ số tra cứu cần tạo trước.
- Nếu đầu vào lớn, hãy yêu cầu ước lượng bộ nhớ cho cấu trúc mới.
Nguồn và giấy phép
ONTER biên tập · original
Đánh giá prompt
Chọn số sao theo trải nghiệm của bạn. Bạn có thể sửa đánh giá sau một phút.
Prompt liên quan
Thiết kế kiến trúc tách lớp cho ứng dụng nhỏ dễ bảo trì
Đề xuất cách tách controller, service, repository, cấu trúc thư mục và luồng gọi cho một ứng dụng nhỏ.
Phân tích và giảm thiểu rủi ro từ dữ liệu đầu vào
Rà soát mã xử lý input để phát hiện chèn lệnh, path traversal và đề xuất chỉnh sửa an toàn theo bối cảnh thực tế.
Soát lỗi logic trong chuỗi if-else phức tạp
Kiểm tra khối điều kiện dài để tìm lỗi logic, làm rõ nhánh biên và đề xuất viết lại dễ hiểu hơn kèm test liên quan.
Viết hàm xử lý dữ liệu đầu vào không tin cậy
Tạo hàm an toàn để kiểm tra, làm sạch, chuẩn hóa và bắt lỗi dữ liệu từ nguồn ngoài trước khi xử lý.
