Tin mới nhất

Menu

Browsing "Older Posts"

Chia Sẻ Khóa Học Recursion, Backtracking Và Dynamic Programming Trong Python [Khóa 6947 A]

19 tháng 11 2023 / No Comments

Tìm hiểu về Competitive Programming, Recursion, Backtracking, Divide và Conquer Method và Dynamic Programming trong Python.

Bạn sẽ học được gì:

  • ✓ Tìm hiểu về đệ quy (recursion).
  • ✓ Tìm hiểu về quay lui (backtracking).
  • ✓ Tìm hiểu về Quy hoạch động (dynamic programming).
  • ✓ Tìm hiểu phương pháp chia để trị (Divide and Conquer).
  • ✓ Triển khai hơn 15 bài toán thuật toán từ đầu.
  • ✓ Cải thiện kỹ năng giải quyết vấn đề của bạn và trở thành một developer mạnh mẽ hơn.

Khóa học này nói về các khái niệm nền tảng của các bài toán thuật toán tập trung vào recursion, backtracking, dynamic programming và các phương pháp chia để trị (Divide and Conquer). Theo tôi được biết, những kỹ thuật này ngày nay rất quan trọng, các thuật toán có thể được sử dụng (và có một số ứng dụng) trong một số lĩnh vực từ công nghệ phần mềm đến ngân hàng đầu tư hoặc R&D.

1. Phần 1 - ĐỆ QUY (RECURSION):

  • ✓ Đệ quy và phương pháp đệ quy là gì.
  • ✓ Tổng quan về stack memory và heap memory.
  • ✓ Stack overflow là gì?
  • ✓ Fibonacci numbers.
  • ✓ Factorial function.
  • ✓ Bài toán tower of Hanoi.

2. Phần 2 - Các Thuật toán tìm kiếm:

  • ✓ Phương pháp tìm kiếm tuyến tính (Linear Search).
  • ✓ Thuật toán tìm kiếm nhị phân (binary search).

3. Phần 3 - SELECTION ALGORITHMS:

  • ✓ Selection algorithms là gì?
  • ✓ Hoare's algorithm.
  • ✓ Cách tìm  k-th order statistics trong O(N) linear running time?
  • ✓ Thuật toán quickselect.
  • ✓ Thuật toán median of medians.
  • ✓ Secretary problem.

4. Phần 4 - CÁC BÀI TOÁN BIT MANIPULATION:

  • ✓ Binary numbers.
  • ✓ Logical operator và shift operator.
  • ✓ Checking even và odd number.
  • ✓ Bit length problem.
  • ✓ Russian peasant multiplication.

5. Phần 5 - BACKTRACKING:

  • ✓ Backtracking là gì?
  • ✓ n-queens problem.
  • ✓ Hamiltonian cycle problem.
  • ✓ Coloring problem.
  • ✓ Knight's tour problem.
  • ✓ Maze problem.
  • ✓ Sudoku problem.

6. Phần 6 - DYNAMIC PROGRAMMING:

  • ✓ Dynamic programming là gì?
  • ✓ Knapsack problem.
  • ✓ Rod cutting problem.
  • ✓ Subset sum problem.
  • ✓ Kadane's algorithm.
  • ✓ Longest common subsequence (LCS) problem.

7. Phần 7 - OPTIMAL PACKING: 

  • ✓ Optimal packing là gì?
  • ✓ bin packing problem.

8. Phần 8 - DIVIDE AND CONQUER APPROACH:

  • ✓ Divide and conquer approach là gì?
  • ✓ Dynamic programming và divide and conquer method.
  • ✓ Làm thế nào để achieve sorting trong O(NlogN) với merge sort?
  • ✓ Closest pair of points problem.

9. Phần 9 - Substring Search Algorithm:

  • ✓ Substring Search Algorithm.
  • ✓ Brute-force substring search.
  • ✓ Z substring search algorithm.
  • ✓ Rabin-Karp algorithm và hashing.
  • ✓ Knuth-Morris-Pratt (KMP) substring search algorithm.

10. Phần 10 - CÁC CÂU HỎI PHỎNG VẤN THƯỜNG GẶP:

  • ✓ Top các câu hỏi phỏng vấn (Google, Facebook và Amazon).
  • ✓ Anagram problem.
  • ✓ Palindrome problem.
  • ✓ Integer reversion problem.
  • ✓ Dutch national flag problem.
  • ✓ Trapping rain water problem.

11. Phần 11 - Algorithms Analysis:

  • ✓ Cách đo thời gian chạy của các thuật toán.
  • ✓ Running time analysis với các big O (ordo), big Ω (omega) và big θ (theta) notation.
  • ✓ Complexity classes.
  • ✓ Thuật toán polynomial (P) and non-deterministic polynomial (NP).

Trong mỗi phần, chúng ta sẽ nói về nền tảng lý thuyết cho tất cả các thuật toán này, sau đó chúng ta sẽ cùng nhau triển khai các bài toán này từ đầu trong Python.

Cảm ơn bạn đã tham gia khóa học, hãy bắt đầu!

Mục lục:

  • ✓ 01 - Giới thiệu.
  • ✓ 02 - Thiết lập môi trường.
  • ✓ 03 - Đệ quy (Recursion).
  • ✓ 04 - Search Algorithms.
  • ✓ 05 - Selection Algorithms.
  • ✓ 06 - Bit Manipulation Problems.
  • ✓ 07 - Backtracking.
  • ✓ 08 - Dynamic Programming.
  • ✓ 09 - Optimal Packing Problem.
  • ✓ 10 - Divide and Conquer Algorithms.
  • ✓ 11 - Substring Search Algorithms.
  • ✓ 12 - CÁC CÂU HỎI PHỎNG VẤN THƯỜNG GẶP (Amazon, Facebook và Google).
  • ✓ 13 - Các bước tiếp theo.
  • ✓ 14 - PHỤ LỤC - COMPLEXITY THEORY CRASH COURSE.
  • ✓ 15 - Algorhyme FREE Algorithms Visualizer App.
  • ✓ 16 - Tài liệu khóa học (TẢI XUỐNG).

Khóa học này dành cho ai:

  • ✓ Khóa học này dành cho những người mới bắt đầu, chưa quen với các bài toán thuật toán cơ bản hoặc những sinh viên đang tìm kiếm cơ hội ôn tập.
  • ✓ Bất kỳ ai đang chuẩn bị cho các cuộc phỏng vấn lập trình hoặc quan tâm đến việc cải thiện kỹ năng giải quyết vấn đề của mình.


NHẬN GET EBOOK TRÊN AMAZON THEO YÊU CẦU




Copyright Disclaimer:
This site does not store any files on its server. We only index and link to content provided by other sites. Please contact the content providers to delete copyright contents if any and email us, we'll remove relevant links or contents immediately.
Tuyên bố miễn trừ bản quyền:
Trang web này không lưu trữ bất kỳ tệp nào trên máy chủ của nó. Chúng tôi chỉ lập chỉ mục và liên kết đến nội dung được cung cấp bởi các trang web khác. Vui lòng liên hệ với các nhà cung cấp nội dung để xóa nội dung bản quyền nếu có và gửi email cho chúng tôi, chúng tôi sẽ xóa các liên kết hoặc nội dung có liên quan ngay lập tức.