Giới thiệu
Xin chào các bạn.
Có lẽ nhiều bạn cũng giống như mình, sau bao năm tháng mài quần trên ghế nhà trường với môn Cấu trúc dữ liệu và giải thuật, đến khi đi làm nhiều khi tự hỏi đã bao giờ mình dùng đến những kiến thức đó chưa. Đặc biệt với một mobile developer như mình thì càng ít khi sử dụng đến các thuật toán quá phức tạp. Nhưng với mình thì những kiến thức này là rất quan trọng, nó giúp rèn luyện tư duy một kĩ năng rất quan trọng đối với lập trình viên. Đã lâu không dùng tới những kiến thức này nên hôm nay mình quyết định viết một loạt bài liên quan đến Cấu trúc dữ liệu và giải thuật, vừa để ôn tập cũng như vừa để các bạn có thêm tài liệu tham khảo. Let’s go.
Tổng quan
Hàng ngày, chúng ta vẫn thường xuyên sử dụng các cấu trúc dữ liệu như Array,Map… các hàm có sẵn như Sort, Reverse …
Vì vậy, Cấu trúc dữ liệu và giải thuật vẫn luôn xuất hiện quanh ta, chỉ là chúng ta không để ý mà thôi. Tổng kết lại chúng ta sẽ có :
Data structures + Algorithms = Program
Trong loạt bài này mình sẽ giới thiệu đến các bạn một số loại Data structures và Algorithms cơ bản:
Data structures
- Arrays
- Hash tables
- Linked Lists
- Stacks & Queues
- Graphs
- Trees
Algorithms
- Recursion
- Sorting
- Searching, BFS, DFS
- Dynamic programing
Nguồn: viblo.asia