Video: [TED Ed song ngữ] Thuật toán là gì - David J Malan 2025
Tất cả các thuật toán đều tìm ra các giải pháp, và nhanh hơn và dễ dàng hơn, thì càng tốt. Mặc dù người ta đã giải quyết các thuật toán theo cách thủ công hàng ngàn năm, làm như vậy có thể tiêu tốn rất nhiều thời gian và đòi hỏi nhiều tính toán số, tùy thuộc vào sự phức tạp của vấn đề mà bạn muốn giải quyết.
Khoảng cách giữa các thuật toán toán học được tạo ra bởi các thiên tài thời đại như Euclid, Newton, Gauss và các thuật toán hiện đại được tạo ra trong các trường đại học cũng như các phòng thí nghiệm nghiên cứu và phát triển tư nhân. Lý do chính cho khoảng cách này là việc sử dụng máy tính.
Một số thuật toán bạn làm việc đòi hỏi phải nhập dữ liệu theo một dạng cụ thể, đôi khi có nghĩa là thay đổi dữ liệu để phù hợp với các yêu cầu của thuật toán. Thao tác dữ liệu không làm thay đổi nội dung của dữ liệu. Những gì nó làm là thay đổi trình bày và hình thức của dữ liệu để cho một thuật toán có thể giúp bạn xem các mẫu mới mà không rõ ràng trước đây (nhưng đã thực sự có trong dữ liệu tất cả cùng).
Tham khảo các định nghĩa sau đây về thuật ngữ mà mọi người thường nhầm lẫn với các thuật toán (nhưng không):Phương trình:
Số và ký hiệu, khi được tính chung, tương đương với một giá trị cụ thể.Một phương trình luôn chứa một dấu bằng để bạn biết rằng các con số và biểu tượng đại diện cho giá trị cụ thể ở phía bên kia của dấu bằng. Các phương trình thường chứa thông tin biến được trình bày dưới dạng một biểu tượng, nhưng chúng không bắt buộc phải sử dụng các biến.
- Công thức: Sự kết hợp của các số và biểu tượng được sử dụng để diễn tả thông tin hoặc ý tưởng. Các công thức thường trình bày các khái niệm toán học hoặc logic, chẳng hạn như xác định Phân số chung lớn nhất (GCD) của hai số nguyên (video này cho biết cách hoạt động này). Nói chung, chúng chỉ ra mối quan hệ giữa hai hay nhiều biến. Hầu hết mọi người nhìn thấy một công thức như một phương trình đặc biệt.
- • Thuật toán:
Một chuỗi các bước được sử dụng để giải quyết vấn đề. Trình tự này trình bày một phương pháp duy nhất để giải quyết một vấn đề bằng cách cung cấp một giải pháp cụ thể. Một thuật toán không cần phải đại diện cho các khái niệm toán học hoặc logic, mặc dù các bài thuyết trình trong cuốn sách này thường rơi vào thể loại đó bởi vì người ta thường sử dụng thuật toán theo cách này. Một số công thức đặc biệt cũng là các thuật toán, chẳng hạn như công thức bậc hai. Để một quá trình đại diện cho một thuật toán, nó phải là Finite: Cuối cùng thì thuật toán cuối cùng sẽ giải quyết vấn đề. Cuốn sách này thảo luận về các vấn đề với một giải pháp đã biết để bạn có thể đánh giá liệu một thuật toán giải quyết vấn đề một cách chính xác hay không.
- Vâng xác định: Hàng loạt các bước phải chính xác và trình bày các bước dễ hiểu. Đặc biệt là vì các máy tính tham gia vào việc sử dụng thuật toán, máy tính phải có khả năng hiểu được các bước để tạo ra một thuật toán hữu ích.
- Hiệu quả: Một thuật toán phải giải quyết tất cả các trường hợp của vấn đề mà ai đó đã định nghĩa nó. Một thuật toán luôn phải giải quyết được vấn đề mà nó phải giải quyết. Mặc dù bạn nên dự đoán một số thất bại, tỷ lệ của sự thất bại là rất hiếm và chỉ xảy ra trong những tình huống được chấp nhận cho việc sử dụng thuật toán dự định.