Тёмный
No video :(

Merge Nodes in Between Zeros - Leetcode 2181 - Python 

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

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

 

5 сен 2024

Поделиться:

Ссылка:

Скачать:

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

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 21   
@coderunner743
@coderunner743 2 месяца назад
thanks, sir because of you I got placed in Zoho.
@NeetCodeIO
@NeetCodeIO 2 месяца назад
Congratulations so happy to hear that :)
@arunmurugan7093
@arunmurugan7093 2 месяца назад
I just want to say that ever since I started following your youtube channel and videos, I have been having an easier time coming up with solutions to a problem. Everytime before I watch your videos, I try to think of solution(s) and then I come here to see if I was on the right track and I have been doing great! It's great to see myself improve and it has all been because of your videos and my practice! Thank you for these videos and keep it up!
@AJK-a2j00k4
@AJK-a2j00k4 2 месяца назад
2nd approach is on different level!
@galkk3
@galkk3 2 месяца назад
my in-place solution: prev = head cur = head.next while cur: temp = 0 prev = prev.next while cur.val != 0: temp += cur.val cur = cur.next cur = cur.next prev.val = temp prev.next = cur return head.next
@shwethaks7994
@shwethaks7994 2 месяца назад
@NeetCodeIO can you make a video on giving tips regarding job search and some websites where we can apply. I think this would be very helpful to many people like me in the middle of a job hunt.
@user-nt4se7vc8v
@user-nt4se7vc8v 2 месяца назад
Thanks, sir Could you please tell me the toll you use to take notes?
@yang5843
@yang5843 2 месяца назад
Thanks for uploading I was curious about the in place solution
@nirmalgurjar8181
@nirmalgurjar8181 2 месяца назад
5:13, we can initialize cur = head.next in the start to avoid first 0 and only update return list when we get node.val == 0 instead checking node.next.val == 0, to reduce complexity and typo and potential bug in the code.
@beinghappy9223
@beinghappy9223 2 месяца назад
class Solution: def mergeNodes(self, head: Optional[ListNode]) -> Optional[ListNode]: temp = head ans = ListNode(0) dummy = ans curr_sum = 0 while temp: if temp.val == 0: if curr_sum >0: dummy.next = ListNode(curr_sum) dummy = dummy.next curr_sum = 0 else: curr_sum += temp.val temp = temp.next return ans.next
@kaunasmiit246
@kaunasmiit246 2 месяца назад
I am recursively calling for each 0
@zongyu100
@zongyu100 2 месяца назад
It seems like your in-place solution is still a bit complicated, could have just keep adding node values to the 0s and delete the last 0, since when you reaching right before the last 0, you could delete the last 0 by "if not cur.next.next: cur.next = cur.next.next"
@nickleo4308
@nickleo4308 2 месяца назад
crazy🥵
@chien-yuyeh9386
@chien-yuyeh9386 2 месяца назад
🥳
@tuandino6990
@tuandino6990 2 месяца назад
I did it without any knowledges regarding linked list, and after reading my code I dont know why it works
@mohanedomer9081
@mohanedomer9081 2 месяца назад
second comment
@TheSambitDutta
@TheSambitDutta 2 месяца назад
Very confusing explanation!! Like if you agree...
@yang5843
@yang5843 2 месяца назад
My new list solution is simpler, skip the first 0, add a new node when we hit a 0 class Solution { public ListNode mergeNodes(ListNode head) { ListNode rc = new ListNode(); head = head.next; ListNode copy = rc; int cur = 0; while ( head!=null ) { if ( head.val == 0 ) { rc.next = new ListNode(cur); rc = rc.next; cur = 0; } cur += head.val; head = head.next; } return copy.next; } }
@krityaan
@krityaan 2 месяца назад
Using additional memory (creating a new node) could be viewed as inefficient during an interview. If you can't modify the original linked list, then this is preferred, but the challenge is to optimise time and space complexities
@mohammedsuhail.s192
@mohammedsuhail.s192 2 месяца назад
# Definition for singly-linked list. class ListNode: def __init__(self, val=0, next=None): self.val = val self.next = next class Solution: def mergeNodes(self, head: Optional[ListNode]) -> Optional[ListNode]: li=[] li1=[] while head: li.append(head.val) head=head.next i=0 head=None while i
@maestr3218
@maestr3218 2 месяца назад
/** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode() {} * ListNode(int val) { this.val = val; } * ListNode(int val, ListNode next) { this.val = val; this.next = next; } * } */ class Solution { public ListNode mergeNodes(ListNode head) { ListNode ansNode = new ListNode(0); ListNode dummy = ansNode; if(head == null) return null; ListNode flag = head; while(flag != null) { boolean present = false; int sum = 0; ListNode temp = flag; while(temp.val != 0) { present = true; sum += temp.val; temp = temp.next; } if(present = true) { ListNode node = new ListNode(sum); dummy.next = node; dummy = node; } flag = temp.next; } return ansNode.next.; } } can somone help ?? why my ans list is 0->4->11 for the first testcase even when im returning ansnode.next
Далее
Why I focus on patterns instead of technologies
7:55
Просмотров 222 тыс.
ПРОСТИ МЕНЯ, АСХАБ ТАМАЕВ
32:44
Просмотров 1,4 млн
10 Math Concepts for Programmers
9:32
Просмотров 1,9 млн
This Algorithm is 1,606,240% FASTER
13:31
Просмотров 810 тыс.
Has Generative AI Already Peaked? - Computerphile
12:48
My Brain after 569 Leetcode Problems
7:50
Просмотров 2,5 млн
How I would learn Leetcode if I could start over
18:03
Просмотров 484 тыс.
8 patterns to solve 80% Leetcode problems
7:30
Просмотров 344 тыс.
ПРОСТИ МЕНЯ, АСХАБ ТАМАЕВ
32:44
Просмотров 1,4 млн