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ế.
Chẩn đoán và sửa lỗi xác thực, phân quyền backend
Phân tích middleware hay logic quyền truy cập, đưa bản sửa và test xác nhận cho lỗi chặn sai hoặc lọt quyền.
Xây dựng bộ test đầy đủ cho tìm kiếm nhị phân
Thiết kế test cho binary search với các biên quan trọng, dữ liệu rỗng, trùng lặp và vị trí đầu cuối.
