Тёмный

Minimum Falling Path Sum II - Leetcode 1289 - Python 

NeetCodeIO
Подписаться 176 тыс.
Просмотров 9 тыс.
50% 1

Опубликовано:

 

6 сен 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 31   
@bhuvan9956
@bhuvan9956 4 месяца назад
Love the longer videos. Basically helps me to see the entire picture. Please keep it going. Love you!
@pratikpatel2512
@pratikpatel2512 4 месяца назад
A simple and more neat code: class Solution: def minFallingPathSum(self, grid: List[List[int]]) -> int: N = len(grid) def get_min_two(r): min1, min2 = float('inf'), float('inf') min1_idx, min2_idx = -1, -1 for c in range(N): if grid[r][c]
@samridhshubham8109
@samridhshubham8109 4 месяца назад
NEAT!!
@udemezueiloabachie8626
@udemezueiloabachie8626 3 месяца назад
This is the neatest solution in 6 lines: class Solution: def minFallingPathSum(self, grid: List[List[int]]) -> int: size = len(grid) for r in range(size - 2, -1, -1): for c in range(size): grid[r][c] = grid[r][c] + min(grid[r + 1][:c] + grid[r + 1][c + 1:]) return min(grid[0])
@corrogist692
@corrogist692 4 месяца назад
I used basically the same approach, but modified the grid in place top-down. Seems even less code and easier to understand!
@tawfikkoptan5781
@tawfikkoptan5781 4 месяца назад
This is the first 30+ minute video om a problem I've seen you make 😂😂😂
@kahafb
@kahafb 4 месяца назад
Funny in-place solution class Solution: def minFallingPathSum(self, grid: List[List[int]]) -> int: n = len(grid) def helper(i): first, second, idx = inf, inf, None for j, val in enumerate(grid[i]): if val < first: second = first first = val idx = j elif val < second: second = val return (first, second, idx) for i in range(n-2, -1, -1): first, second, idx = helper(i+1) for j in range(n): if j != idx: grid[i][j] += first else: grid[i][j] += second return min(grid[0])
@advaitdongre4499
@advaitdongre4499 4 месяца назад
but at line 26, we're using the helper function right? what is the time complexity gets to bigO(n^3)? since the function is already using a for loop and then we're using it inside 2 for loops?
@meemee417
@meemee417 4 месяца назад
Did the same thing but with heap to get min 2 nums and their indices without using a helper function
@dampdigits
@dampdigits 4 месяца назад
Yes this is easier than the previous one. At least when it comes to being naive about time complexity.
@business_central
@business_central 4 месяца назад
Dude... you are such a Hero! 🔥🔥🔥🔥
@michael._.
@michael._. 4 месяца назад
in the last solution, doesn't the line: `first_row = [(val, idx) for idx, val in enumerate(grid[0])]` require $O(n)$ space complexity?
@NeetCodeIO
@NeetCodeIO 4 месяца назад
Shit you're right
@michael._.
@michael._. 4 месяца назад
@@NeetCodeIO i always wanted to tell you, it’s not just about solutions, but I always learned how to explain a problem comprehensively from your videos and it helped me so much, thank you :>
@AkshayAnil0-1
@AkshayAnil0-1 4 месяца назад
Yes
@aashishbathe
@aashishbathe 3 месяца назад
I am seeing this entire video after a long time, if anyone wants a more code optimized solution for last method, here it is :) class Solution: def minFallingPathSum(self, grid: List[List[int]]) -> int: def find_smallest(row): smallest = [] for idx, num in enumerate(row): if len(smallest) < 2: smallest.append((num, idx)) elif smallest[1][0] > num: smallest.pop() smallest.append((num, idx)) smallest.sort() return smallest N = len(grid) dp = find_smallest(grid[0]) for r in range(1, N): new_dp = [] new_row = grid[r] for next_c in range(N): if next_c == dp[0][1]: new_row[next_c] += dp[1][0] else: new_row[next_c] += dp[0][0] new_dp = find_smallest(new_row) dp = new_dp return dp[0][0]
@MP-ny3ep
@MP-ny3ep 4 месяца назад
Thank you so much. Been waiting for this one.
@ik6071
@ik6071 4 месяца назад
why use tuple? and not a dict to store element-> idx for two minimum pairs?
@pastori2672
@pastori2672 4 месяца назад
idk what it is but this is much easier then minimum height trees imo
@kebab4640
@kebab4640 4 месяца назад
Thanks sir!
@satyamjha68
@satyamjha68 4 месяца назад
Solved it!!
@chien-yuyeh9386
@chien-yuyeh9386 4 месяца назад
Nice🎉🎉
@chaitanyasharma6270
@chaitanyasharma6270 4 месяца назад
I dont get TLE with the caching solution in java
@nikhil199029
@nikhil199029 4 месяца назад
U impemented priority queue with size 2.
@akialter
@akialter 4 месяца назад
DP week
@TF2Shows
@TF2Shows 4 месяца назад
Can someone help? (WARNING: solution incoming, don't read if you haven't solved it yet) I'm using the O(n^2) runtime and O(1) memory solution, in which in find 1st and 2nd minimum in each row. I wrote my implementation but got stuck in test case 9: [-37, 51, -36, 34, -22], [82, 4, 30, 14, 38], [-68, -52, -92, 65, -85], [-49, -3, -77, 8, -19], [-60, -71, -21, -62, -73] The greedy path is: -37, 4, -92, -49, -73 for a total of -247. But the test case expected answer is: -268 which is the path: -37, 4, -85, -77, -73. Can someone explain why the greedy solution, which should work, doesn't work in this case? Why im the only one that fails this test case?
@kebab4640
@kebab4640 4 месяца назад
Finally lol
@leedinglin7482
@leedinglin7482 4 месяца назад
flfc
@carrotiq6879
@carrotiq6879 4 месяца назад
pls don't do TOP DOWN solution, By watching your videos I have train my brain to first think of Bottom-up solution, and it has become a habit. So continue with good old Bottom-up
@hasrat17
@hasrat17 4 месяца назад
Thanks, Can you give me referrel? I am actively looking for a Job last year I completed my degree and joined HCLTech but I didn't like working there so I resigned this month.
Далее
Freedom Trail - Leetcode 514 - Python
25:18
Просмотров 13 тыс.
Permutations II - Backtracking - Leetcode 47
11:47
Просмотров 90 тыс.
Cute kitty gadget 💛💕
00:23
Просмотров 11 млн
Number of Good Paths - Leetcode 2421 - Python
25:13
Просмотров 12 тыс.
Score After Flipping Matrix - Leetcode 861 - Python
22:30
Minimum Cost to Hire K Workers - Leetcode 857 - Python
19:01
Path Sum III | LeetCode 437 | Medium
25:01
Просмотров 13 тыс.
50 hours of Mid-Level System Design in One Hour
40:59
4Sum - Leetcode 18 - Python
15:28
Просмотров 77 тыс.