Skip to content

Commit dbcfd5f

Browse files
committed
Update main readme
1 parent d0559c2 commit dbcfd5f

File tree

1 file changed

+6
-7
lines changed

1 file changed

+6
-7
lines changed

README.md

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -33,11 +33,10 @@ Cấu trúc dữ liệu là một phương thức tổ chức và lưu trữ d
3333

3434
## Giải thuật
3535

36-
Giải thuật hay thuật toán là một đặc tả rõ ràng về cách giải quyết một vấn đề. Nó là một tập hợp các quy tắc xác định chính xác một chuỗi hoạt động.
36+
Giải thuật hay thuật toán là một tập hợp hữu hạn các hướng dẫn được xác định rõ ràng, có thể thực hiện được bằng máy tính, thường để giải quyết một lớp vấn đề hoặc để thực hiện một phép tính.
3737

3838
`B` - Beginner (Cơ bản), `A` - Advanced (Nâng cao)
3939

40-
4140
### Algorithms by Topic
4241

4342
* **Các phép toán (Math)**
@@ -158,7 +157,7 @@ Mô hình thuật toán là một phương pháp hoặc cách tiếp cận chung
158157
* `A` [Dijkstra Algorithm](src/algorithms/graph/dijkstra)
159158
* `A` [Prim’s Algorithm](src/algorithms/graph/prim)
160159
* `A` [Kruskal’s Algorithm](src/algorithms/graph/kruskal)
161-
* **Giải thuật chia để trị** - chia nhỏ vấn đề và giải quyết các phần nhỏ đấy.
160+
* **Giải thuật chia để trị** - chia nhỏ vấn đề và giải quyết các vấn đề nhỏ đấy.
162161
* `B` [Binary Search](src/algorithms/search/binary-search)
163162
* `B` [Tower of Hanoi](src/algorithms/others/hanoi-tower)
164163
* `B` [Pascal's Triangle](src/algorithms/math/pascal-triangle)
@@ -191,20 +190,20 @@ Mô hình thuật toán là một phương pháp hoặc cách tiếp cận chung
191190
* `A` [Bellman-Ford Algorithm](src/algorithms/graph/bellman-ford)
192191
* `A` [Floyd-Warshall Algorithm](src/algorithms/graph/floyd-warshall)
193192
* `A` [Regular Expression Matching](src/algorithms/string/regular-expression-matching)
194-
* **Giải thuật quay lùi** - tương tự brute force ta cũng tìm tất cả các khả năng nhưng trong quá trình tìm kiếm, nếu ta gặp một hướng lựa chọn không thỏa mãn, ta quay lui về điểm lựa chọn nơi có các hướng khác và thử hướng lựa chọn tiếp theo. Khi đã thử hết các lựa chọn xuất phát từ điểm lựa chọn đó, ta quay lại điểm lựa chọn trước đó và thử hướng lựa chọn tiếp theo tại đó. Quá trình tìm kiếm thất bại khi không còn điểm lựa chọn nào nữa
193+
* **Giải thuật quay lùi** - tương tự brute force ta cũng tìm tất cả các khả năng nhưng trong quá trình tìm kiếm, nếu ta gặp một hướng lựa chọn không thỏa mãn, ta quay lùi về điểm lựa chọn nơi có các hướng khác và thử hướng lựa chọn tiếp theo. Khi đã thử hết các lựa chọn xuất phát từ điểm lựa chọn đó, ta quay lại điểm lựa chọn trước đó và thử hướng lựa chọn tiếp theo tại đấy. Quá trình tìm kiếm thất bại khi không còn điểm lựa chọn nào nữa.
195194
* `B` [Jump Game](src/algorithms/others/jump-game)
196195
* `B` [Unique Paths](src/algorithms/others/unique-paths)
197196
* `B` [Power Set](src/algorithms/sets/power-set)
198197
* `A` [Hamiltonian Cycle](src/algorithms/graph/hamiltonian-cycle)
199198
* `A` [N-Queens Problem](src/algorithms/others/n-queens)
200199
* `A` [Knight's Tour](src/algorithms/others/knight-tour)
201200
* `A` [Combination Sum](src/algorithms/sets/combination-sum)
202-
* **Giải thuật nhánh cận** - ghi nhớ giải pháp chi phí thấp nhất được tìm thấy ở mỗi giai đoạn của tìm kiếm quay lùi, và sử dụng chi phí của giải pháp chi phí thấp nhất được tìm thấy như là một ràng buộc thấp hơn về chi phí của một giải pháp chi phí thấp nhất cho vấn đề, để loại bỏ các giải pháp với chi phí lớn hơn giải pháp chi phí thấp nhất được tìm thấy cho đến nay.
201+
* **Giải thuật nhánh cận** - ghi nhớ chi phí thấp nhất được tìm thấy ở các giải pháp của giải thuật quay lùi, và sự dụng chi phí đấy như là một ràng buộc để loại bỏ các giải pháp chi phí lớn hơn. Nói các khác giải thuật nhánh cận là tối ưu của giải thuật quay lùi.
203202

204203
### Ký hiệu O lớn
205204

206-
*Ký hiệu O* được sử dụng để phân loại các thuật toán theo cách thời gian chạy hoặc yêu cầu không gian của chúng phát triển khi kích thước đầu vào tăng lên.
207-
Trên biểu đồ dưới đây, bạn có thể tìm thấy hầu hết các thứ tự tăng trưởng phổ biến của các thuật toán được chỉ định trong ký hiệu Big O.
205+
*Ký hiệu O* được sử dụng để phân loại các thuật toán theo cách thời gian thực thi hoặc yêu cầu không gian bổ sung của chúng.
206+
Trong biểu đồ dưới đây, bạn có thể thấy thứ tự phát triển của hầu hết các thuật toán phổ biến được chỉ định trong ký hiệu Big O.
208207

209208
![Big O graphs](./assets/big-o-graph.png)
210209

0 commit comments

Comments
 (0)