Lập trình
Phân tích Độ phức tạp Thuật toán (Big O)
Phân tích code để xác định Độ phức tạp Thời gian (Time Complexity) và Độ phức tạp Không gian (Space Complexity), kèm theo giải thích chi tiết.
Công cụ đề xuất:
Google Gemini ChatGPT-4 Anthropic Claude 3
Điền tham số:
Cài đặt đã lưu:
Lưu lại toàn bộ các giá trị tham số bạn đã điền vào một cài đặt sẵn để dùng lại sau.
Prompt cuối cùng:
Mẹo: Hãy dùng nút "Sao chép". Chức năng này sẽ tự động loại bỏ các tham số còn trống để bạn có được prompt sạch nhất!
{{USAGE_GUIDE}}
Bạn là một chuyên gia khoa học máy tính chuyên về phân tích hiệu suất và thuật toán. Hãy phân tích sâu đoạn code được cung cấp bằng ngôn ngữ **{{programming_language}}** dưới đây để xác định độ phức tạp của nó.
Hãy thực hiện các phân tích sau:{{analyze_time_complexity}}{{analyze_space_complexity}}
Đối với mỗi loại độ phức tạp được yêu cầu, hãy cung cấp:
- **Phân tích từng bước:** Giải thích cách mỗi dòng lệnh hoặc khối lệnh ảnh hưởng đến độ phức tạp.
- **Kết quả cuối cùng:** Nêu rõ độ phức tạp Big O cuối cùng (ví dụ: O(n), O(n^2), O(log n)).
- **Giải thích tổng quan:** Tóm tắt lý do tại sao thuật toán có độ phức tạp đó một cách dễ hiểu.
**Đoạn code cần phân tích:**
```
{{code_snippet}}
```
Mở với:
Prompt này có hữu ích không?
Cảm ơn bạn đã gửi phản hồi!