Counting Bits | Leetcode

  Рет қаралды 70,920

Techdose

Techdose

Күн бұрын

Пікірлер: 276
@AnandKumar-uy7nn
@AnandKumar-uy7nn 2 жыл бұрын
Here the trick is that number of set bits in even numbers is equal to the number of set bits in n/2 and +1 is the number is odd Bcz doubling the number = shifting the number 1 position towards left which contribute to one 0 at the end so no effect on the number of set bits if the number is odd that means we need first add one zero to the end and then add +1 to it in order to make it odd ex : 6 ==> 110 while making it 12 we can shift by one position left so 12 = 110 1100 no more 1 is added to it while making the 13 we need to add +1 to the 12 which has a zero at its end and hence it directly contributes to one 1 12 + 1 ==> 1100 + 1 ==> 1101 class Solution { public: vector countBits(int n) { vector ans(n+1); ans[0]=0; for(int i=1; i
@Mercer80
@Mercer80 2 жыл бұрын
So it's dynamic programming as we are using previous results
@AnandKumar-uy7nn
@AnandKumar-uy7nn 2 жыл бұрын
@@Mercer80 yeah !!
@ShivamKumar-qv6em
@ShivamKumar-qv6em 3 жыл бұрын
finest u tube channel for competitive programming .
@Official-tk3nc
@Official-tk3nc 4 жыл бұрын
I think this is the most underrated youtube channel for programming believe me your channel will reach 1 Million subscribers soon :)
@techdose4u
@techdose4u 4 жыл бұрын
Thanks for your motivation
@tonyz2203
@tonyz2203 2 жыл бұрын
true
@abhishekkeshri3974
@abhishekkeshri3974 Жыл бұрын
vector countBits(int n) { vectorbitcount; for(int i=0;i
@subham-raj
@subham-raj 4 жыл бұрын
I'm glad that I found this channel :)
@techdose4u
@techdose4u 4 жыл бұрын
Ahhh.... 😁
@topcoder3812
@topcoder3812 4 жыл бұрын
Simple code sol // Time: O(n) // Space: O(n) class Solution { public: vector countBits(int num) { vector res{0}; for (int i = 1; i > 1]); } return res; } };
@techdose4u
@techdose4u 4 жыл бұрын
👍
@nagendravelpuri444
@nagendravelpuri444 2 жыл бұрын
This is the best algorithm for solving this problem ,good explanation sir!!
@techdose4u
@techdose4u 2 жыл бұрын
Thanks ☺️
@snehilgupta8558
@snehilgupta8558 4 жыл бұрын
You explain these problems so easily and in the best way ...... Amazing work sir
@krishangopal6795
@krishangopal6795 4 жыл бұрын
Best youtube channel till now.
@techdose4u
@techdose4u 4 жыл бұрын
Thanks :)
@krishangopal6795
@krishangopal6795 4 жыл бұрын
TECH DOSE Sir please share your mail or contact number need placement related advice
@SharmaTushar1-yt
@SharmaTushar1-yt Жыл бұрын
Best explanation. I watched Neetcode's video first but this explanation is a lot better.
@techdose4u
@techdose4u Жыл бұрын
:)
@karthikkunjithapatham3814
@karthikkunjithapatham3814 4 жыл бұрын
Great solution. Am wondering how can one think and arrive at this kind of an approach. Especially during interviews :) This is where I struggle. Mostly my mind revolves around standard problem solving techniques.
@techdose4u
@techdose4u 4 жыл бұрын
Practice will improve your ability :) so keep practicing.
@dayanandraut5660
@dayanandraut5660 3 жыл бұрын
clear cut explanation. 1000 likes for the idea and another 1000 likes for easy explanation. Keep it up. You just earned a subscriber.
@techdose4u
@techdose4u 3 жыл бұрын
Thanks ❤️
@pennilesscoder3926
@pennilesscoder3926 4 жыл бұрын
The Method is Generally Look Up table Method......For finding set bits at each Number....But We can Find Total Number of Set bits from 1 to N with Time complexity O(logN)....Which is better than O(N)....And the right shift or divide by 2 approcah is well explained and understood
@lekanosagie
@lekanosagie 3 жыл бұрын
I think you're misunderstanding. This method finds the number of set bits in O(1) time, not O(logN). Given that there are N elements in the array, the time omplexity is O(1) * N = O(N). Populating the array is O(N) at the least, so if it took LogN to find the number of set bits, then the time complexity for your solution would be O(NLogN) which is slower than TECH DOSE's approach.
@rishabsinha8749
@rishabsinha8749 4 жыл бұрын
dp[i] = dp[i>>1] + (i&1); can also be done and it is faster than / and %
@amolmishra8621
@amolmishra8621 3 жыл бұрын
This solution is just wow! Mindblown totally.
@techdose4u
@techdose4u 3 жыл бұрын
:)
@akshaycharjan6384
@akshaycharjan6384 Жыл бұрын
Best one even after 3 years!
@basedmangoes3379
@basedmangoes3379 4 жыл бұрын
amazing explanation. thank you!!! i was struggling with the intuition, but breaking it down was extremeyl helpful!
@techdose4u
@techdose4u 4 жыл бұрын
Nice :)
@udayptp
@udayptp Жыл бұрын
Saw many different ways to solve this problem on you tube and gfg but this was best approach. ❤
@pforprogrammer
@pforprogrammer 2 жыл бұрын
watch multiple videos but didn't even get the gist of this topic, but your way of explaining this problem is osm really got the concept... . Thankyou man
@saravanan925
@saravanan925 4 жыл бұрын
Nowadays, I am searching for one problem in youtube, if tech dose has uploaded that problem then my problem becomes easy
@anssha2643
@anssha2643 4 жыл бұрын
Your videos are all so good. Thanks for the conetent. Simple to understand and easy to implement
@techdose4u
@techdose4u 4 жыл бұрын
Welcome :)
@PriyanshuSingh-dt3oz
@PriyanshuSingh-dt3oz 2 жыл бұрын
Crystal Clear Explaination
@techdose4u
@techdose4u 2 жыл бұрын
Thanks ❤️
@amiteshanand5157
@amiteshanand5157 4 жыл бұрын
can u explain more optimized solution using just log 32 complexity or log num
@siddhartha.saif25
@siddhartha.saif25 4 жыл бұрын
i like the way you develop the solution. take example, then have some observations. great job! thank you!
@techdose4u
@techdose4u 4 жыл бұрын
Welcome
@saranshdabas4223
@saranshdabas4223 3 жыл бұрын
Instant sub for this kind of content. Keep it up!
@techdose4u
@techdose4u 3 жыл бұрын
Welcome :)
@mosiurrahman4061
@mosiurrahman4061 Жыл бұрын
bow down to this guy.
@rogers2934
@rogers2934 4 жыл бұрын
Now this is how you explain!!! Great work!!
@techdose4u
@techdose4u 4 жыл бұрын
Thanks :)
@violetamalinkova8840
@violetamalinkova8840 7 ай бұрын
Amazing explanation, thank you so much.
@Oscar-vr2md
@Oscar-vr2md 4 жыл бұрын
You rock, Duuuude! Learned a lot from your videos!!!!
@techdose4u
@techdose4u 4 жыл бұрын
Thanks man :)
@chayandas4942
@chayandas4942 3 жыл бұрын
Bhaiya, you such a great teacher. You make us understand so patiently and easily. Thank you
@techdose4u
@techdose4u 3 жыл бұрын
Welcome :)
@udaychatterjee4424
@udaychatterjee4424 2 жыл бұрын
It's not easy to come up with this solution but if you do...you are awesome !
@abhishekrai4325
@abhishekrai4325 4 жыл бұрын
Thank you so much sir for such a brilliant explanation. Love your videos. Thank you for putting so much effort :)
@techdose4u
@techdose4u 4 жыл бұрын
Welcome :)
@shivam7929
@shivam7929 3 жыл бұрын
this is explanation is lit man , I am totally mesmerized
@techdose4u
@techdose4u 3 жыл бұрын
Thanks :)
@rahulbawa3969
@rahulbawa3969 3 жыл бұрын
Thanks for the awesome explanation. However, I doubt if I could have come up with this observation in an actual interview. I would have just gone with O(32n) solution :(
@bree9895
@bree9895 Жыл бұрын
i dont think anyone can come up with this without seeing it first :/
@tanujkalra7334
@tanujkalra7334 4 жыл бұрын
This approach was fantastic :) Thanks a ton!
@techdose4u
@techdose4u 4 жыл бұрын
Welcome :)
@RicheshGuptaRichu
@RicheshGuptaRichu 4 жыл бұрын
Tagda bhai.. GFG DSA course me bhgaa dia tha iss topic ko
@techdose4u
@techdose4u 4 жыл бұрын
Thanks bhai 😀
@bhopalsingh4102
@bhopalsingh4102 4 жыл бұрын
Clean and crisp explanation...
@techdose4u
@techdose4u 4 жыл бұрын
Thanks
@srirammuralidaran2121
@srirammuralidaran2121 3 жыл бұрын
Superb explanation and easy to understand the solution. Thanks keep going ...
@techdose4u
@techdose4u 3 жыл бұрын
Welcome :)
@dmsohel1335
@dmsohel1335 4 жыл бұрын
I think we can use while(n==0){ n&(n-1) expression and increment the count the Time comp is O(n*no of set bits)
@techdose4u
@techdose4u 4 жыл бұрын
This is the same as method 1. A little more efficient.
@rohithkumartangudu4664
@rohithkumartangudu4664 4 жыл бұрын
@@techdose4u This solution is giving 3ms runtime
@dmsohel1335
@dmsohel1335 4 жыл бұрын
@@rohithkumartangudu4664 time complexity less or more ?
@rohithkumartangudu4664
@rohithkumartangudu4664 4 жыл бұрын
@@dmsohel1335 The above method time complexity is O(logn). There are n elements to find then the total time complexity is O(nlogn).
@HenryMufc82
@HenryMufc82 Жыл бұрын
very clear explanation of the solution and the theory behind it, thanks very much :)
@mondayemmanuel191
@mondayemmanuel191 3 жыл бұрын
I totally enjoy your explanations.
@techdose4u
@techdose4u 3 жыл бұрын
Thanks :)
@abhishekkumaar
@abhishekkumaar 3 жыл бұрын
Suppose we have to find the sum of count of bits instead of the array, then there’s a O(log n) solution available.
@JamesHalpert8555
@JamesHalpert8555 4 жыл бұрын
Great explanation as always!!! Very much helpful!! Thank You!! Can you please make a video on time complexity and space complexity...
@techdose4u
@techdose4u 4 жыл бұрын
Yea sure. I have started the playlist but not finished due to challenges. Once this is over, I will finish it.
@aditikhandelwal135
@aditikhandelwal135 4 жыл бұрын
Your explanation are just amazing 😍😍
@techdose4u
@techdose4u 4 жыл бұрын
Thanks :)
@orchideirakozesr8842
@orchideirakozesr8842 3 жыл бұрын
Very thankful for the work you’re doing mate !
@techdose4u
@techdose4u 3 жыл бұрын
Welcome :)
@asthapandey265
@asthapandey265 4 жыл бұрын
@TECH DOSE solution is great , but if the space complexity is o(n), then would it not fail for nos ~=10^9??
@ersinerdem7285
@ersinerdem7285 3 жыл бұрын
Great explanation for the DP solution!
@KushalBhatia
@KushalBhatia 4 жыл бұрын
Mind blowing power of observation. Thank you Keep up the good work @TECH DOSE
@techdose4u
@techdose4u 4 жыл бұрын
Welcome :)
@mrinmoypaul6810
@mrinmoypaul6810 3 жыл бұрын
great explanation and solution
@techdose4u
@techdose4u 3 жыл бұрын
Thanks :)
@yashkapoor508
@yashkapoor508 3 жыл бұрын
The best solution I found so far 😁🥳
@techdose4u
@techdose4u 3 жыл бұрын
Nice :)
@sandeepkumarnagamalla1020
@sandeepkumarnagamalla1020 4 жыл бұрын
Excellent explanation !! Very easy to understand sir. thanks a lot for making this video.
@techdose4u
@techdose4u 4 жыл бұрын
Welcome :)
@Learner010
@Learner010 4 жыл бұрын
ans[i] = ans[i&(i-1)] + 1; work perfectly
@techdose4u
@techdose4u 4 жыл бұрын
👍
@agileprogramming7463
@agileprogramming7463 4 жыл бұрын
Mind == blown away
@techdose4u
@techdose4u 4 жыл бұрын
🤣 a coder's way to represent feelings
@liftwithamey
@liftwithamey 4 жыл бұрын
Great Explanation !!!!!!!!
@techdose4u
@techdose4u 4 жыл бұрын
Thanks
@suryakiran2970
@suryakiran2970 Жыл бұрын
Excellent Explanation
@techdose4u
@techdose4u Жыл бұрын
Thanks :)
@siddhantsamal8878
@siddhantsamal8878 4 жыл бұрын
sir , you are truly a genius ,always helped a lot..Thankyou
@techdose4u
@techdose4u 4 жыл бұрын
Welcome :)
@pratham654
@pratham654 2 жыл бұрын
This is the best explanation. More kudos to you 💯💯
@sukanyasen305
@sukanyasen305 3 жыл бұрын
Beautiful solution
@techdose4u
@techdose4u 3 жыл бұрын
Thanks
@abhisekmishra5245
@abhisekmishra5245 4 жыл бұрын
just wow !!! nice explanation sir
@techdose4u
@techdose4u 4 жыл бұрын
Thanks :)
@NoOneIsHereRightNow
@NoOneIsHereRightNow 3 жыл бұрын
Amazing solution thanks
@techdose4u
@techdose4u 3 жыл бұрын
Welcome :)
@navyaagrawal2474
@navyaagrawal2474 4 жыл бұрын
Please continue making videos in the upcoming June challenge too. Your videos are awesome!
@techdose4u
@techdose4u 4 жыл бұрын
Thanks :)
@kirtigera2225
@kirtigera2225 4 жыл бұрын
Thankew sir.. Please upload egg dropping puzzle problem using recursion and dp...
@techdose4u
@techdose4u 4 жыл бұрын
Yea sure. I am not getting any time you see. Daily videos is very exhausting.
@kirtigera2225
@kirtigera2225 4 жыл бұрын
@@techdose4u OK sir..
@santanu29
@santanu29 2 жыл бұрын
Thank you for the explanation
@techdose4u
@techdose4u 2 жыл бұрын
Welcome 😊
@saravana6882
@saravana6882 3 жыл бұрын
fantastic solution
@techdose4u
@techdose4u 3 жыл бұрын
Thanks :)
@farjanask869
@farjanask869 Жыл бұрын
Chala help ayindi anna thank you so much Annaya
@keshavraghav3896
@keshavraghav3896 3 жыл бұрын
ooooooohhhhh... you are really awesome sir...!
@techdose4u
@techdose4u 3 жыл бұрын
Thanks :)
@fsociety8438
@fsociety8438 4 жыл бұрын
faad bhai faad
@techdose4u
@techdose4u 4 жыл бұрын
Thanks bhai :)
@shreedharkushwaha3100
@shreedharkushwaha3100 3 жыл бұрын
Plzz make a video for negative numbers also
@Michandel
@Michandel Жыл бұрын
Great explanation!
@RanjuRao
@RanjuRao 3 жыл бұрын
Thank you for the solution :)
@techdose4u
@techdose4u 3 жыл бұрын
Welcome
@dhawalpatil4038
@dhawalpatil4038 3 жыл бұрын
just loved the explanation!
@mahipalsingh-yo4jt
@mahipalsingh-yo4jt 3 жыл бұрын
Excellent sir !!!!!!!!!!!!!!!!!
@techdose4u
@techdose4u 3 жыл бұрын
Thanks
@m.s.nabhiram1532
@m.s.nabhiram1532 4 жыл бұрын
very nicely explained
@techdose4u
@techdose4u 4 жыл бұрын
Thanks
@priyeshjammula854
@priyeshjammula854 3 жыл бұрын
Superb explanation
@abhisheksunda7925
@abhisheksunda7925 3 жыл бұрын
Great!! How to come up with this kind of solution?
@wentingsong9435
@wentingsong9435 4 жыл бұрын
Brilliant, you are a savior!
@techdose4u
@techdose4u 4 жыл бұрын
Thanks :)
@siddhartha.saif25
@siddhartha.saif25 4 жыл бұрын
very nice! thank you!
@techdose4u
@techdose4u 4 жыл бұрын
Welcome
@techNtech352
@techNtech352 4 жыл бұрын
Seriously, this is one of the best Channel for coding problems. Such a nice explanation as always
@techdose4u
@techdose4u 4 жыл бұрын
Thanks
@gokulnaathb2627
@gokulnaathb2627 2 жыл бұрын
Very nicely explained, Sir
@techdose4u
@techdose4u 2 жыл бұрын
Thanks 😊
@topcoder3812
@topcoder3812 4 жыл бұрын
Sir please create new course on basic to advanced competitive programming .If you have time. Your teaching style is awesome
@techdose4u
@techdose4u 4 жыл бұрын
I wish I had more time. Currently it will not be possible. I will focus videos topicwise once leetcode challenge is over.
@topcoder3812
@topcoder3812 4 жыл бұрын
@@techdose4u As your wish👍👍
@sabihaakter4580
@sabihaakter4580 4 жыл бұрын
Nice Explanation
@techdose4u
@techdose4u 4 жыл бұрын
Thanks
@eshwarnaidu4747
@eshwarnaidu4747 2 жыл бұрын
clear explanation
@dontknow592
@dontknow592 3 жыл бұрын
Thank You Sir. Very precisely explained 🤓🙌🏻
@techdose4u
@techdose4u 3 жыл бұрын
Welcome :)
@meghamalviya8495
@meghamalviya8495 4 жыл бұрын
Can you please explain how the complexity was O(N log max ) in 1st method?
@techdose4u
@techdose4u 4 жыл бұрын
It is same as NlogN. Max means num because num is the maximum value of range.
@meghamalviya8495
@meghamalviya8495 4 жыл бұрын
@@techdose4u thanks!
@karansagar7870
@karansagar7870 4 жыл бұрын
great explanation
@techdose4u
@techdose4u 4 жыл бұрын
Thanks
@ajaywadhwa3398
@ajaywadhwa3398 4 жыл бұрын
Awesome Explanations !! Really helped a lot.
@techdose4u
@techdose4u 4 жыл бұрын
Thanks :)
@chitobi3010
@chitobi3010 2 жыл бұрын
Thank you for your explanation! However, I don't quite understand the time complexity for the first approach. Isn't it supposed to be O(N)? Time complexity using Brian Kernighan's algorithm is O(1) + O(N+ 1) to iterate from range(0, n+1). Please, am I missing something?
@TechieIndia
@TechieIndia 4 жыл бұрын
please make more videos on bitmasking also.
@techdose4u
@techdose4u 4 жыл бұрын
👍 I will make as problems keep coming
@TechieIndia
@TechieIndia 4 жыл бұрын
@@techdose4u please make videos on code forces round 647 div 2 or 1 b/c every question is related to bitmasking
@MrACrazyHobo
@MrACrazyHobo 3 жыл бұрын
Can we say that this approach is dynamic programming?
@techdose4u
@techdose4u 3 жыл бұрын
Yes right.
@deveshsharma7487
@deveshsharma7487 4 жыл бұрын
Really a great obervation and the best method to solve this problem I have seen till now. Thanks a lot, I wish your channel becomes more and more famous. Keep up the good work
@techdose4u
@techdose4u 4 жыл бұрын
Thanks for your wishes. Touchwood 😀
@kunalsoni7681
@kunalsoni7681 4 жыл бұрын
Sir this video is such a helpful to me.. to understand bit manipulation 😊☺️.. thank you..
@techdose4u
@techdose4u 4 жыл бұрын
Welcome :)
@anmax
@anmax 2 жыл бұрын
Wow I thought I wasn't understading anything, but it suddenly clicked
@singurubhavana8368
@singurubhavana8368 4 жыл бұрын
Simply awesome👌👌
@techdose4u
@techdose4u 4 жыл бұрын
Thanks :)
@raghuveernaraharisetti
@raghuveernaraharisetti 3 жыл бұрын
Always the best!
@anand.prasad502
@anand.prasad502 4 жыл бұрын
simply awesome! Thank you very much :)
@techdose4u
@techdose4u 4 жыл бұрын
Welcome
@mahadishakkhor123
@mahadishakkhor123 10 ай бұрын
i can understand from ur video
@michaelchan6144
@michaelchan6144 3 жыл бұрын
great vid! subscribed!!!!!
@techdose4u
@techdose4u 3 жыл бұрын
Thanks 😊
@lovleshbhatt7797
@lovleshbhatt7797 4 жыл бұрын
Sir I m your big fan, I want to ask a question that I have completed my Trees and BST from GeeksForGeeks and solved mostly problem on GFG and some problem on Leetcode too, Now my question is that Should I go for CP trees question or I have to completed the remaining leetcode question of Trees and BST???
@techdose4u
@techdose4u 4 жыл бұрын
If you are coding for placements then concentrate only on leetcode and interviewbits. If you love CP then do it. Leetcode is sufficient for placement.
@sonuagarwal7679
@sonuagarwal7679 4 жыл бұрын
This will also work num[i]=num[i-(i & -i)]+1;
@techdose4u
@techdose4u 4 жыл бұрын
👍
@dmsohel1335
@dmsohel1335 4 жыл бұрын
What is the time complexity
@evgeni-nabokov
@evgeni-nabokov 4 жыл бұрын
@@dmsohel1335 ~num
@kollivenkatamadhukar5059
@kollivenkatamadhukar5059 4 жыл бұрын
Excellent Observation But how can one arrive at that observation. How Does one even think of property like /2 results in the following results ?? Can u help !
@techdose4u
@techdose4u 4 жыл бұрын
It's easy. Because dividing a number by 2 then it's right shift by one bit for decimal. That's how you can figure it out.
@kollivenkatamadhukar5059
@kollivenkatamadhukar5059 4 жыл бұрын
@@techdose4u I think u didn't get it. I wanted to know whether you have tried out all those properties you know(Due to Practice) while figuring out this is the apt property !!. Or you have derived it according to the ques ?? If Yes Then How. Could you please walk me through it if possible? I'm willing to know your taught process when you have first seen this question basically. That helps all of us a lot is it the practice we are lacking in or Taught Process in wrong directions. :D
@techdose4u
@techdose4u 4 жыл бұрын
@@kollivenkatamadhukar5059 I just understood on seeing only due to practice.
Counting Bits - Dynamic Programming - Leetcode 338 - Python
13:24
Remove K digits | Build lowest number | Leetcode #402
15:30
Techdose
Рет қаралды 89 М.
Yay😃 Let's make a Cute Handbag for me 👜 #diycrafts #shorts
00:33
LearnToon - Learn & Play
Рет қаралды 117 МЛН
Quilt Challenge, No Skills, Just Luck#Funnyfamily #Partygames #Funny
00:32
Family Games Media
Рет қаралды 28 МЛН
УДИВИЛ ВСЕХ СВОИМ УХОДОМ!😳 #shorts
00:49
ТВОИ РОДИТЕЛИ И ЧЕЛОВЕК ПАУК 😂#shorts
00:59
BATEK_OFFICIAL
Рет қаралды 7 МЛН
Counting inversions in an array
19:03
Techdose
Рет қаралды 93 М.
C++ Bitsets in Competitive Programming
15:35
Errichto Algorithms
Рет қаралды 121 М.
Interval List Intersections | Leetcode #986
12:19
Techdose
Рет қаралды 25 М.
2 Years of C++ Programming
8:20
Zyger
Рет қаралды 7 М.
Maximal square | Dynamic programming | Leetcode #221
18:27
Techdose
Рет қаралды 72 М.
Permutation Sequence | Leetcode #60
18:17
Techdose
Рет қаралды 56 М.
Yay😃 Let's make a Cute Handbag for me 👜 #diycrafts #shorts
00:33
LearnToon - Learn & Play
Рет қаралды 117 МЛН