Có Video Toán và thuật toán mỗi ngày

Toán lập trình là cái củ địt j, toán và lập trình nó luôn song hành, toán -> khoa học vật lý, hóa, sinh, tin.
Toán rời rạc, theo tao tìm hiểu, nó khác so với giải tích hay đại số tuyến tính hay kinh tế lượng theo những gì tới nay t được biết.
Rồi cái môn thuật toán cũng khác vcl, dù cũng là thuật "toán". Ý t là các kỹ năng khác ấy.
 
Toán rời rạc, theo tao tìm hiểu, nó khác so với giải tích hay đại số tuyến tính hay kinh tế lượng theo những gì tới nay t được biết.
Rồi cái môn thuật toán cũng khác vcl, dù cũng là thuật "toán". Ý t là các kỹ năng khác ấy.
Cái này đéo biết. Chờ chuyên gia vào giải đáp.
 
Toán rời rạc, theo tao tìm hiểu, nó khác so với giải tích hay đại số tuyến tính hay kinh tế lượng theo những gì tới nay t được biết.
Rồi cái môn thuật toán cũng khác vcl, dù cũng là thuật "toán". Ý t là các kỹ năng khác ấy.
Toán rời rạc thì là toán logic, tổ hợp, đồ thị, chứ có gì đâu mà liên quan tới toán lập trình nhỉ. Môn toán rời rạc thì tao học rồi, tao cũng ko hiểu toán lập trình ý mày là gì. Trong nhiều bài toán lập trình thì nó cũng yêu cầu kiến thức về toán như xác suất.
Hoặc ý mày là dùng lập trình để tính các bài toán trong tổ hợp vd tính tổ hợp chập C, n, k. rồi lấy phép modulo vì các bài toán tổ hợp giá trị tăng rất nhanh. Thì mày dùng quy hoặch động hoặc định lý Lucas để tính bài này. Muốn thử sức với mấy dạng này thì có thể vô đây https://projecteuler.net/archives . Muốn xem bài giải của mấy bài trong project euler mày có thể mua mấy cuốn này https://tiki.vn/sang-tao-trong-thuat-toan-va-lap-trinh-tap-5-p27979415.html?spid=160306454
 
Sửa lần cuối:
Từ nay tao sẽ làm 1 bài toán hoặc thuật toán mỗi ngày để tạo thói quen giúp não khỏi bị ngu, hình thành tư duy phản biện giúp chống lại những luận điệu xuyên tạc, chống phá của Đảng và nhà nước :vozvn (8)::vozvn (8):. Thằng nào thích thì làm chung cho vui
Khởi động với bài thuật toán đơn giản:
[solution page 2]Bài 1- medium Unique Paths - LeetCode (29/9/2024)
[solution page 4]Bài 2 - hard : Regular Expression Matching - LeetCode (30/9/2024)
[solution page 6]Bài 3 - medium Jump Game II - LeetCode (03/10/2024)
[solution page 6]Bài 4 - medium Number of Longest Increasing Subsequence (12/10/2024)
[solution page 6]Bài 5 - medium: Jump Game (20/10/2024)
[solution page 7]Bài 6 - Hard: Longest Valid Parentheses (20/10/2024)
Bài 7 - medium: https://leetcode.com/problems/minimum-path-sum/description/ (23/10/2024)
Thuật toán của FB Reels & Youtube shorts spread /delivered dựa trên yếu tố gì? Yếu tố nào quan trọng nhất? 🙏🙏🙏
 
Toán rời rạc thì là toán logic, tổ hợp, đồ thị, chứ có gì đâu mà liên quan tới toán lập trình nhỉ. Môn toán rời rạc thì tao học rồi, tao cũng ko hiểu toán lập trình ý mày là gì. Trong nhiều bài toán lập trình thì nó cũng yêu cầu kiến thức về toán như xác suất.
Hoặc ý mày là dùng lập trình để tính các bài toán trong tổ hợp vd tính tổ hợp chập C, n, k. rồi lấy phép modulo vì các bài toán tổ hợp giá trị tăng rất nhanh. Thì mày dùng quy hoặch động hoặc định lý Lucas để tính bài này. Muốn thử sức với mấy dạng này thì có thể vô đây https://projecteuler.net/archives . Muốn xem bài giải của mấy bài trong project euler mày có thể mua mấy cuốn này https://tiki.vn/sang-tao-trong-thuat-toan-va-lap-trinh-tap-5-p27979415.html?spid=160306454
Yêu mày <3
 
Toán rời rạc thì là toán logic, tổ hợp, đồ thị, chứ có gì đâu mà liên quan tới toán lập trình nhỉ. Môn toán rời rạc thì tao học rồi, tao cũng ko hiểu toán lập trình ý mày là gì. Trong nhiều bài toán lập trình thì nó cũng yêu cầu kiến thức về toán như xác suất.
Hoặc ý mày là dùng lập trình để tính các bài toán trong tổ hợp vd tính tổ hợp chập C, n, k. rồi lấy phép modulo vì các bài toán tổ hợp giá trị tăng rất nhanh. Thì mày dùng quy hoặch động hoặc định lý Lucas để tính bài này. Muốn thử sức với mấy dạng này thì có thể vô đây https://projecteuler.net/archives . Muốn xem bài giải của mấy bài trong project euler mày có thể mua mấy cuốn này https://tiki.vn/sang-tao-trong-thuat-toan-va-lap-trinh-tap-5-p27979415.html?spid=160306454
T có biết gì đâu mày ơi, như t thấy trong chương trình học có môn đó khác biệt so với khối kinh tế, mà đọc thì t thấy cũng hay mà m.
 
Solution bài 7 @LQDuy2 @sangnguyen112233 @vô danh tiểu tốt
Python:
class Solution:
    def minPathSum(self, grid: List[List[int]]) -> int:
        m, n = len(grid), len(grid[0])
        dp = [[float('inf') for _ in range(n + 1)] for _ in range(m + 1)]
        for i in range(m):
            for j in range(n):
                id = i + 1
                jd = j + 1
                if (id == 1 and jd == 1):
                    dp[1][1] = grid[i][j]
                else:
                    dp[id][jd] = min(dp[id - 1][jd], dp[id][jd - 1]) + grid[i][j]
        return dp[m][n]
 
bài này nhìn qua giống bài độ dài tối thiểu hôm qua nhỉ
cùng 1 kiểu đó, nhưng mà đang luyện tập nên mấy bài ná ná nhau cứ làm cho nó quen, lần sau nhìn đề có kiểu tương tự thì cũng nhanh tìm ra hướng
 
solution bài 8:
Python:
class Solution:
    def uniquePathsWithObstacles(self, obstacleGrid: List[List[int]]) -> int:
        m, n = len(obstacleGrid), len(obstacleGrid[0])
        dp = [[0 for _ in range(n + 1)] for _ in range(m + 1)]
        if obstacleGrid[0][0] == 1:
            return 0
        for i in range(m):
            for j in range(n):
                id = i + 1
                jd = j + 1
                if id == 1 and jd == 1:
                    dp[id][jd] = 1
                    continue
                if obstacleGrid[i][j] == 1:
                    dp[id][jd] = 0
                else:
                    dp[id][jd] = dp[id][jd - 1] + dp[id - 1][jd] 
        return dp[m][n]
 
solution bài 8:
Python:
class Solution:
    def uniquePathsWithObstacles(self, obstacleGrid: List[List[int]]) -> int:
        m, n = len(obstacleGrid), len(obstacleGrid[0])
        dp = [[0 for _ in range(n + 1)] for _ in range(m + 1)]
        if obstacleGrid[0][0] == 1:
            return 0
        for i in range(m):
            for j in range(n):
                id = i + 1
                jd = j + 1
                if id == 1 and jd == 1:
                    dp[id][jd] = 1
                    continue
                if obstacleGrid[i][j] == 1:
                    dp[id][jd] = 0
                else:
                    dp[id][jd] = dp[id][jd - 1] + dp[id - 1][jd]
        return dp[m][n]
Với tất cả sự tôn trọng, mày đang ném một bài toán top server vào mặt một con gà, nên mày từ từ để t thẩm =))))
 
trả bài đây, bài này khó ra phết đấy
Python:
class Solution:
    def minDistance(self, word1: str, word2: str) -> int:
        m = len(word1)
        n = len(word2)
        dp = [[0] * (m+1) for _ in range(n+1)]
        for i in range(m+1):
            dp[0][i] = i
        for i in range(n+1):
            dp[i][0] = i
        for i in range(1,n+1,1):
            for j in range(1,m+1,1):
                if word1[j-1] == word2[i-1]:
                    dp[i][j] = dp[i-1][j-1]
                else:
                    dp[i][j] = 1+ min(dp[i][j-1], dp[i-1][j-1], dp[i-1][j])
        return dp[n][m]
 

Có thể bạn quan tâm

Top