**Các Thuật Toán Là Gì Và Chúng Hoạt Động Như Thế Nào?**
Trừ khi bạn học toán hoặc lập trình, thuật toán từ có thể nghe giống tiếng Hy Lạp đối với bạn, nhưng nó là một trong những thành phần của mọi thứ bạn sử dụng để đọc bài viết này. Dưới đây là giải thích nhanh về thuật toán là gì và cách chúng hoạt động.
Tuyên bố từ chối trách nhiệm: Tôi không phải là giáo viên toán hoặc khoa học máy tính, vì vậy không phải tất cả các thuật ngữ tôi sử dụng đều là kỹ thuật.
Tìm hiểu thêm: [**Thuật toán là gì**](https://angiariverside.vn/thuat-toan-la-gi/)
Đó là bởi vì tôi đang cố gắng giải thích mọi thứ bằng tiếng Anh đơn giản cho những người không rành về toán học. Điều đó đang được nói, có một số toán học liên quan, điều này là không thể tránh khỏi. Những người yêu thích toán học, vui lòng sửa chữa hoặc giải thích thêm trong các nhận xét, nhưng hãy giữ nó đơn giản để chúng ta không có sự sai lệch về toán học giữa chúng ta.
Xem thêm: [**Các Thuật Toán Là Gì Trong Lập Trình**](https://boosty.to/angiariverside/posts/58ba8b13-b49e-4b19-b86e-ec85d3ebdfd9)

Thuật toán là gì?
Từ "thuật toán" có cùng từ nguyên với "đại số" ngoại trừ việc nó ám chỉ chính nhà toán học Ả Rập Khwarizm (chỉ là một mẩu tin thú vị). Đối với những người không phải là lập trình viên trong số chúng ta, thuật toán là một tập hợp các lệnh lấy đầu vào A và cung cấp đầu ra B, thay đổi dữ liệu có liên quan theo một cách nào đó. Thuật toán có nhiều ứng dụng. Về mặt toán học, chúng có thể giúp tính toán các hàm từ các điểm trong tập dữ liệu và những thứ nâng cao hơn. Ngoài ứng dụng trong lập trình, chúng còn đóng vai trò quan trọng trong việc nén tập tin và mã hóa dữ liệu.
Tập hợp các hướng dẫn cơ bản
Giả sử bạn của bạn gặp bạn ở cửa hàng tạp hóa và bạn đang hướng dẫn anh ấy về phía bạn. Bạn sẽ nói "đi vào qua cánh cửa bên phải, tòa nhà văn phòng phía trên khu vực cá ở bên trái và nếu bạn nhìn thấy sữa, bạn đã đi qua tôi. Đó là cách thuật toán hoạt động. Chúng tôi có thể sử dụng sơ đồ để minh họa dựa trên những gì chúng tôi biết trước hoặc tại đây Hướng dẫn tiêu chuẩn cho việc học khóa học.
Tham khảo: [**Kiến Thức Về Thuật Toán - Thuật Toán Là Gì?**](https://site-9345475-7348-630.mystrikingly.com/blog/ki-n-th-c-v-thu-t-toan-thu-t-toan-la-gi)
Từ BẮT ĐẦU, bạn sẽ đi theo con đường này, và tùy thuộc vào những gì xảy ra, bạn sẽ làm theo quy trình của Google cho đến kết quả cuối cùng. Sơ đồ khối là một công cụ trực quan dễ hiểu hơn một tập hợp các hướng dẫn được sử dụng bởi máy tính. Tương tự như vậy, các thuật toán giúp làm điều tương tự với nhiều mô hình dựa trên toán học hơn.
Đồ thị
Hãy sử dụng một sơ đồ để minh họa các cách khác nhau mà chúng tôi có thể cung cấp hướng dẫn.
Chúng ta có thể biểu diễn đồ thị này như một kết nối giữa tất cả các điểm. Để tái tạo hình ảnh này, chúng tôi có thể cung cấp một bộ hướng dẫn cho những người khác.
Phương pháp một
Chúng ta có thể biểu diễn điều này dưới dạng một chuỗi các điểm và thông tin sẽ tuân theo dạng chuẩn của đồ thị = (x1, y1), (x2, y2), Error, (xn, yn).
Lô = (0,0), (3,0), (3,3), (5,5), (7,10), (8,7), (9,4), (10,1)
Thật dễ dàng để vẽ từng điểm một và kết nối chúng với điểm trước đó. Tuy nhiên, hãy tưởng tượng một biểu đồ có hàng nghìn điểm hoặc nhiều đoạn thẳng. Danh sách đó sẽ có rất nhiều dữ liệu, phải không? Sau đó, chúng phải được kết nối từng cái một, đó có thể là một nỗi đau.
Tìm hiểu: [**Con Gái Sinh Năm 2021 Mệnh Gì? Sinh Con Trai Hay Con Gái Vào Năm 2021?**](https://hackmd.io/@angiariverside/rkNcAaDNs)
Phương pháp hai
Một điều khác chúng ta có thể làm là cung cấp điểm bắt đầu, độ dốc của đường giữa điểm đó và điểm tiếp theo, và hiển thị vị trí dự kiến của điểm tiếp theo bằng cách sử dụng dạng đồ họa tiêu chuẩn = (điểm bắt đầu, [m1, x1, h1], re, [mn, xn, hn] Ở đây, biến 'm' đại diện cho độ dốc của đường, 'x' đại diện cho hướng của số lượng (x hoặc y) và 'h' cho bạn biết cách bạn cũng có thể nhớ để rút ra từng điểm A sau hành động.
Đồ thị = (0,0), [0, x, 3], [0, y, 3], [1, x, 2], [2,5, x, 2], [-3, x, 1], [ -3, x, 1], [-3, x, 1]
Bạn sẽ kết thúc với cùng một đồ thị. Bạn có thể thấy rằng ba số hạng cuối cùng trong biểu thức này giống nhau, vì vậy chúng ta có thể giảm nó bằng cách nói nó ba lần theo một cách nào đó. Giả sử rằng mỗi khi bạn thấy biến “R” xuất hiện có nghĩa là lặp lại điều cuối cùng. Chúng tôi có thể làm:
Đồ thị = (0,0), [0, x, 3], [0, y, 3], [1, x, 2], [2,5, x, 2], [-3, x, 1], [ R = 2]
Điều gì sẽ xảy ra nếu các điểm riêng lẻ không quan trọng, chỉ quan trọng biểu đồ? Chúng ta có thể hợp nhất ba cái cuối cùng như thế này:
Đồ thị = (0,0), [0, x, 3], [0, y, 3], [1, x, 2], [2,5, x, 2], [-3, x, 3]
Nó ngắn hơn một chút so với trước đây.
Phương pháp ba
Hãy thử một cách khác.
y = 0, 0≤x≤3
x = 0, 0≤y≤3
y = x, 3≤x≤5
y = 2,5x-7,5, 5≤x≤7
y = -3x + 29,7x≤8
y = -3x + 29,8x≤9
y = -3x + 29,9≤x≤10
Ở đây chúng tôi diễn đạt nó bằng các thuật ngữ đại số thuần túy. Một lần nữa, nếu các điểm không quan trọng mà chỉ là biểu đồ, chúng ta có thể hợp nhất ba mục cuối cùng.
y = 0, 0≤x≤3
x = 0, 0≤y≤3
y = x, 3≤x≤5
y = 2,5x-7,5, 5≤x≤7
y = -3x + 29,7x≤10
Bây giờ, phương pháp bạn chọn tùy thuộc vào khả năng của bạn. Có lẽ bạn rất giỏi toán và vẽ nên bạn đã chọn phương án cuối cùng. Có lẽ bạn giỏi điều hướng, vì vậy bạn đã chọn tùy chọn thứ hai. Tuy nhiên, trong thế giới máy tính, bạn đang thực hiện nhiều loại tác vụ khác nhau và khả năng của máy tính vẫn chưa thực sự thay đổi. Do đó, các thuật toán được tối ưu hóa cho các nhiệm vụ mà chúng hoàn thành.
Một điểm quan trọng cần lưu ý là mỗi phương pháp phụ thuộc vào một khóa. Mỗi bộ hướng dẫn đều vô dụng trừ khi bạn biết cách đối phó với chúng. Tập hợp điểm đầu tiên không có ý nghĩa gì nếu bạn không biết rằng bạn phải vẽ từng điểm và nối các điểm. Trừ khi bạn biết ý nghĩa của từng biến trong phương pháp thứ hai, bạn sẽ không biết cách áp dụng chúng, giống như các khóa mật mã. Khóa cũng là một phần không thể thiếu trong việc sử dụng thuật toán và thông thường, khóa có thể được tìm thấy trong cộng đồng hoặc thông qua các tiêu chuẩn.
Tệp nén
Khi bạn tải xuống tệp .zip, bạn giải nén nội dung để có thể sử dụng bất kỳ nội dung nào. Hầu hết các hệ điều hành ngày nay có thể đào vào một tệp .zip giống như một thư mục bình thường, thực hiện mọi thứ ở chế độ nền. Hơn một thập kỷ trước, trên máy tính Windows 95 của tôi, tôi đã phải giải nén mọi thứ theo cách thủ công trước khi có thể nhìn thấy bất kỳ thứ gì khác ngoài tên tệp bên trong. Điều này là do nội dung được lưu trữ trên đĩa dưới dạng tệp .zip không ở dạng có thể sử dụng được. Hãy nghĩ về một chiếc ghế kéo. Khi bạn muốn sử dụng nó như một chiếc giường, bạn phải lấy đệm ra và mở ra, nó sẽ chiếm nhiều diện tích hơn. Bạn có thể gấp lại khi không cần dùng đến hoặc khi muốn vận chuyển.
Các thuật toán nén được điều chỉnh và tối ưu hóa cụ thể cho các loại tệp mà chúng nhắm mục tiêu. Ví dụ: các định dạng âm thanh sử dụng các cách lưu trữ dữ liệu khác nhau, khi được giải mã bằng codec âm thanh, sẽ tạo ra các tệp âm thanh giống với dạng sóng gốc. Để biết thêm thông tin về những khác biệt này, hãy xem bài viết trước của chúng tôi, Sự khác biệt giữa tất cả các định dạng âm thanh là gì? Các định dạng âm thanh không mất dữ liệu và tệp .zip có một điểm chung: cả hai đều tạo ra dữ liệu thô ở dạng chính xác sau quá trình giải nén. Bộ giải mã âm thanh bị mất sử dụng các phương pháp khác để tiết kiệm dung lượng đĩa, chẳng hạn như cắt bớt các tần số mà tai người không nghe được và làm mịn các phần của dạng sóng để loại bỏ một số chi tiết. Cuối cùng, mặc dù chúng ta có thể không thực sự nghe thấy sự khác biệt giữa bản nhạc MP3 và bản nhạc CD, nhưng bản nhạc trước chắc chắn thiếu thông tin.
Mã hóa dữ liệu
Các thuật toán cũng được sử dụng khi bảo mật dữ liệu hoặc khi chuyển tiếp. Thay vì lưu trữ dữ liệu để sử dụng ít dung lượng đĩa hơn, hãy lưu trữ dữ liệu theo cách mà các chương trình khác không thể phát hiện được. Nếu ai đó đánh cắp ổ cứng của bạn và bắt đầu quét nó, ngay cả khi bạn xóa các tệp, họ vẫn có thể lấy dữ liệu vì dữ liệu vẫn còn ở đó, ngay cả khi vị trí chuyển tiếp đã biến mất. Khi dữ liệu được mã hóa, không có gì được lưu trữ sẽ giống như vậy. Nó thường xuất hiện ngẫu nhiên, như thể nó đã bị phân mảnh theo thời gian. Bạn cũng có thể lưu trữ dữ liệu và hiển thị dưới dạng các loại tệp khác nhau. Các tệp hình ảnh và tệp nhạc rất hữu ích cho việc này, chẳng hạn, chúng có thể lớn mà không gây nghi ngờ. Tất cả điều này được thực hiện bằng cách sử dụng một thuật toán toán học nhận một số loại đầu vào và chuyển nó thành một loại đầu ra rất cụ thể khác.
Thuật toán là gì chính là công cụ toán học phục vụ nhiều mục đích trong khoa học máy tính. Họ cố gắng cung cấp một cách nhất quán đường đi giữa điểm bắt đầu và điểm kết thúc và cung cấp hướng dẫn để đi theo con đường đó.
Bạn vừa xem: [**Các Thuật Toán Là Gì Và Chúng Hoạt Động Như Thế Nào?**](https://hackmd.io/@angiariverside/S1Fwj1uNs)
Mọi thông tin vui lòng liên hệ [**An Gia Riverside VN**](https://angiariverside.vn/)