✨Thuật toán không đơn định

Thuật toán không đơn định

Trong lý thuyết tính toán, một thuật toán không đơn định là một thuật toán có một hoặc nhiều điểm lựa chọn, mà tại đó có nhiều hướng đi tiếp khác nhau mà không được chỉ rõ hướng nào sẽ được chọn. Mỗi thực thi cụ thể của một thuật toán như vậy chọn lấy một hướng mỗi khi gặp một điểm lựa chọn. Do đó, khi áp dụng cho cùng một dữ liệu đầu vào và trạng thái khởi tạo, có thể có các đường thực thi khác nhau của thuật toán đó, và khi kết thúc, các đường thực thi này thường cho kết quả là các dữ liệu ra khác nhau hoặc kết thúc tại các trạng thái cuối cùng khác nhau.

Ví dụ: Tour du lịch qua n thành phố

Bài toán: cho n thành phố và một số tuyến đường nối một số cặp hai thành phố. Câu hỏi là có hay không một tour đi qua n thành phố và quay lại chỗ cũ mà không đi qua thành phố nào quá 1 lần.

Dưới đây là một ví dụ về một thuật toán không đơn định dùng để kiểm tra xem có tồn tại một tour như trên hay không.

Chọn một hoán vị của n thành phố. Giả sử ta được {c1,c2,..,cn}

Nếu với mọi i từ 1 đến n, ta có tuyến đường trực tiếp giữa hai thành phố cici+1, và giữa c1cn cũng có đường nối trực tiếp, thuật toán kết thúc với kết quả ; nếu không, thuật toán kết thúc với kết quả không biết.

Ta thấy rằng thuật toán này không phải lúc nào cũng cho ra một kết quả hữu ích, nhưng nó không bao giờ đưa ra câu trả lời sai. Ngoài ra, nó có thể (đôi khi) đưa ra câu trả lời đúng và có ích một cách nhanh chóng hơn bất kỳ thuật toán đơn định nào cho bài toán này.

👁️ 0 | 🔗 | 💖 | ✨ | 🌍 | ⌚
Trong lý thuyết tính toán, một **thuật toán không đơn định** là một thuật toán có một hoặc nhiều điểm lựa chọn, mà tại đó có nhiều hướng đi tiếp khác nhau mà không được
Trong khoa học máy tính, **thuật toán tất định** là một thuật toán có đầu ra (output) hoàn toàn có thể dự đoán được (xác định được) qua đầu vào (input), và máy chạy thuật
phải|nhỏ|[[Lưu đồ thuật toán (thuật toán Euclid) để tính ước số chung lớn nhất (ưcln) của hai số _a_ và _b_ ở các vị trí có tên A và B. Thuật toán tiến hành bằng
nhỏ| Để tìm kiếm một mục đã cho trong một danh sách theo thứ tự nhất định, có thể sử dụng cả thuật toán [[Tìm kiếm tuần tự|tìm kiếm nhị phân và tuyến tính (bỏ
Bài viết này là **danh sách các thuật toán** cùng một mô tả ngắn cho mỗi thuật toán. ## Thuật toán tổ hợp ### Thuật toán tổ hợp tổng quát * Thuật toán Brent: tìm
**Thuật toán Deutcsh-Jozsa** là một thuật toán lượng tử, đưa ra bởi **David Deutsch** và **Richard Jozsa** năm 1992 với những cải tiến bởi Richard Cleve, Artur Ekert, Chiara Macchiavello, và Michele Mosca năm 1998.
Bài này nói về từ điển các chủ đề trong toán học. ## 0-9 * -0 * 0 * 6174 ## A * AES * ARCH * ARMA * Ada Lovelace * Adrien-Marie Legendre *
** Thuật toán so khớp chuỗi Knuth–Morris–Pratt** (hay **thuật toán KMP**) tìm kiếm sự xuất hiện của một "từ" W trong một "xâu văn bản" S bằng cách tiếp tục quá trình tìm kiếm khi
Trong khoa học máy tính, **thuật toán dòng dữ liệu** là thuật toán để xử lý các dòng dữ liệu trong đó dữ liệu vào được cung cấp dưới dạng một dãy các phần tử,
Trong khoa học máy tính và trong toán học, **thuật toán sắp xếp** là một thuật toán sắp xếp các phần tử của một danh sách (hoặc một mảng) theo thứ tự (tăng hoặc giảm).
Trong tính toán lượng tử, **thuật toán lượng tử** là một thuật toán chạy bằng mô hình thực tế của tính toán lượng tử, mô hình được sử dụng phổ biến nhất là mô hình
**Thuật toán Luhn** hoặc **công thức Luhn**, cũng được biết là thuật toán "modulus 10" hay "mod 10", nó được đặt theo tên người sáng tạo ra nó, nhà khoa học của IBM Hans Peter
**Thuật toán Shor** là một thuật toán lượng tử giúp phân tích nhân tử một số nguyên ở dạng _N_ = _p_._q_, với _p_ và _q_ là các số nguyên tố, tức là tìm ra
**Thuật toán Kruskal** là một thuật toán trong lý thuyết đồ thị để tìm cây bao trùm nhỏ nhất của một đồ thị liên thông vô hướng có trọng số. Nói cách khác, nó tìm
thumb|320x320px|Mã hóa khóa đối xứng: quá trình mã hóa và giải mã sử dụng cùng một khóa Trong mật mã học, các **thuật toán khóa đối xứng** (_tiếng Anh: symmetric-key algorithms_) là một lớp các
**Thuật toán Berlekamp–Massey** là một thuật toán tìm bộ ghi dịch hồi tiếp tuyến tính (LFSR) ngắn nhất sinh ra một dãy nhị phân cho trước. Thuật toán cũng tìm ra đa thức nhỏ nhất
Các **thuật toán tìm đường đi trong mê cung** là những phương pháp được tự động hóa để giải một mê cung. Các thuật toán chọn đường ngẫu nhiên, bám theo tường, Pledge, và Trémaux
**Thuật toán phân tán** là một thuật toán được thiết kế để chạy trên phần cứng máy tính được xây dựng từ các bộ vi xử lý kết nối. Các thuật toán phân tán được
**Kỹ thuật hàng không** là khoa học về hàng không, về thiết kế, lắp ráp, phát triển và đảm bảo các yếu tố kỹ thuật trực tiếp cho các phương tiện bay (máy bay và
**Thuật toán Ford- Fulkerson** (đặt theo L. R. Ford và D. R. Fulkerson) tính toán luồng cực đại trong một mạng vận tải. Tên Ford-Fulkerson cũng thường được sử dụng cho thuật toán Edmonds-Karp, một
Trong hình học tính toán, **thuật toán Chan**, gọi theo tên của Timothy M. Chan, là một thuật toán phụ thuộc dữ liệu ra tối ưu cho việc tìm bao lồi của tập hợp _P_
Một động cơ phản lực đang được kiểm tra tại Robins Air Force Base, Georgia, USA. Đường hầm phía sau động cơ làm giảm tiếng ồn và sự phụt ra của sản phẩm cháy. Máy
nhỏ|Tấm ảnh dường như cho thấy UFO chụp ngày 31 tháng Bảy năm 1952 ở [[New Jersey]] Một **vật thể bay không xác định**, còn được gọi là **UFO** (viết tắt của trong tiếng Anh)
**Thuật toán Bellman–Ford** hay **Giải thuật Bellman–Ford** là một thuật toán tính các đường đi ngắn nhất nguồn đơn trong một đồ thị có hướng có trọng số (trong đó một số cung có thể
Trong khoa học máy tính, **thuật toán Floyd-Warshall** (còn được gọi là **thuật toán Floyd**, **thuật toán Roy-Warshall**, **thuật toán Roy-Floyd** hoặc **thuật toán WFI**) là một thuật toán để tìm đường đi ngắn nhất
Trong khoa học máy tính, **thuật toán Prim** là một thuật toán tham lam để tìm cây bao trùm nhỏ nhất của một đồ thị vô hướng có trọng số liên thông. Nghĩa là nó
**Thuật toán Dinitz** là một thuật toán thời gian đa thức mạnh cho việc tìm luồng cực đại trên đồ thị luồng, tìm ra năm 1970 bởi nhà nghiên cứu khoa học máy tính người
**Thuật toán Dijkstra**, mang tên của nhà khoa học máy tính người Hà Lan Edsger Dijkstra vào năm 1956 và ấn bản năm 1959, là một thuật toán giải quyết bài toán đường đi ngắn
Bài này nêu lên một số ứng dụng tiêu biểu của các linh kiện tích hợp mạch rắn - Mạch khuếch đại thuật toán. Trong bài có sử dụng các sơ đồ đơn giản hóa,
**Giải thuật tham lam** (tiếng Anh: _Greedy algorithm_) là một thuật toán giải quyết một bài toán theo kiểu metaheuristic để tìm kiếm lựa chọn tối ưu địa phương ở mỗi bước đi với hy
**Thuật toán ghép cặp của Edmonds** (còn gọi là thuật toán bông hoa) là một thuật toán trong lý thuyết đồ thị để tìm cặp ghép cực đại trong đồ thị. Thuật toán được tìm
thumb|Tarjan's Algorithm Animation **Thuật Toán Tarjan** (được đặt theo tên của người tìm ra nó - Robert Tarjan) là một thuật toán trong lý thuyết đồ thị dùng để tìm thành phần liên thông mạnh
**Thuật toán Borůvka** là một thuật toán để tìm cây bao trùm nhỏ nhất trên đồ thị. Thuật toán này được xuất bản lần đầu năm 1926 bởi Otakar Borůvka dưới dạng một phương pháp
Trong khoa học máy tính, **thuật toán Kosaraju-Sharir** là một thuật toán tìm thành phần liên thông mạnh trong đồ thị có hướng. Theo Aho, Hopcroft và Ullman, thuật toán này xuất hiện trong một
Trong khoa học máy tính và lý thuyết đồ thị, **thuật toán Edmonds–Karp** là một trường hợp đặc biệt của thuật toán Ford–Fulkerson cho việc tìm luồng cực đại trong mạng. Nó có độ phức
Thời gian mà máy tính khi thực hiện một thuật toán không chỉ phụ thuộc vào bản thân thuật toán đó, ngoài ra còn tùy thuộc từng máy tính. Để đánh giá hiệu quả của
**Mạch khuếch đại thuật toán** (tiếng Anh: operational amplifier), thường được gọi tắt là **op-amp** là một mạch khuếch đại "DC-coupled" (tín hiệu đầu vào bao gồm cả tín hiệu BIAS) với hệ số khuếch
thumb|Thuật toán Euclid để tìm ước chung lớn nhất (ƯCLN) của hai đoạn thẳng BA và DC, độ dài của cả hai đều là bội của một "đơn vị" độ dài chung. Vì độ dài
[[Siêu máy tính song song hàng loạt Blue Gene/P của IBM]] **Tính toán song song** (tiếng Anh: _Parallel computing_), là một hình thức tính toán trong đó nhiều phép tính và tiến trình được thực
**Lý thuyết độ phức tạp tính toán** (tiếng Anh: _computational complexity theory_) là một nhánh của lý thuyết tính toán trong lý thuyết khoa học máy tính và toán học tập trung vào phân loại
**Học viện Hàng không Việt Nam** ( – **VAA**) là một trường đại học công lập định hướng nghề nghiệp ứng dụng trực thuộc Bộ Xây dựng của nước Cộng hòa xã hội chủ nghĩa
thumb|Bản in khắc gỗ của Nhật Bản mô tả một cuộc tấn công của bộ binh trong [[Chiến tranh Nga–Nhật.]] **Chiến thuật biển người** (Hán ngữ: **人海戰術**: **Nhân hải chiến thuật**) là một chiến thuật
Toán học trong nghệ thuật: Bản khắc trên tấm đồng mang tên _[[Melencolia I_ (1514) của Albrecht Dürer. Những yếu tố liên quan đến toán học bao gồm com-pa đại diện cho hình học, hình
Trong đồ thị này, đường đi rộng nhất từ Maldon tới Feering có chiều rộng 29, và đi qua Clacton, Tiptree, Harwich, và Blaxhall. **Bài toán đường đi rộng nhất**, còn gọi là **bài toán
Trong ngành khoa học máy tính, một **giải thuật tìm kiếm** là một thuật toán lấy đầu vào là một bài toán và trả về kết quả là một lời giải cho bài toán đó,
**Các bài toán của Hilbert** là một danh sách gồm 23 vấn đề (bài toán) trong toán học được nhà toán học Đức David Hilbert đưa ra tại Hội nghị toán học quốc tế tại
Toán học không có định nghĩa được chấp nhận chung. Các trường phái tư tưởng khác nhau, đặc biệt là trong triết học, đã đưa ra các định nghĩa hoàn toàn khác nhau. Tất cả
[CHÍNH HÃNG] Combo 2 Dầu Gội Phủ Bạc (ĐEN) Phủ Bạc Hàn Quốc LARISA 500ML - Gội Là Đen Tóc, Phủ Đen Tóc Tinh Chất Thảo DượcDẦU GỘI ĐEN TÓC PHỦ BẠC HÀN QUỐC LARISA
[CHÍNH HÃNG] Dầu Gội Phủ Bạc (ĐEN) Phủ Bạc Hàn Quốc Larisa 500ML - Gội Là Đen Tóc, Phủ Đen Tóc Tinh Chất Thảo DượcDẦU GỘI ĐEN TÓC PHỦ BẠC HÀN QUỐC LARISA 500MLChiết xuất
Trong khoa học máy tính, **độ phức tạp tính toán** hoặc đơn giản là **độ phức tạp** của thuật toán là lượng tài nguyên cần thiết để chạy nó. Tập trung đặc biệt được đưa