Big Oh(O) vs Big Omega(Ω) vs Big Theta(θ) notations | Asymptotic Analysis of Algorithms with Example

Поділитися
Вставка
  • Опубліковано 3 вер 2019
  • Support Simple Snippets by Donations -
    Google Pay UPI ID - tanmaysakpal11@okicici
    PayPal - paypal.me/tanmaysakpal11
    --------------------------------------------------------------------------------------------- In this tutorial we will understand the 3 different Asymptotic Time Complexity analysis of Algorithms namely -
    Big Oh(O)
    Big Omega(Ω)
    Big Theta(θ)
    We will understand each Complexity by taking its mathematical definition as well as example with graph.
    Lastly we will understand its practical usage & understand why we really need 3 different time complexity measures.
    Big O notation -
    Big O notation specifically describes worst case scenario.
    It represents the upper bound running time complexity of an algorithm.
    Mathematically -
    Let f and g be functions of n - where n is natural no denoting size or steps of the algorithm then -
    f(n) = O(g(n))
    IFF
    f(n) less than or = c.g(n)
    where n greater than = n0, c greater than 0, n0 greater than = 1
    Big Omega notation -
    Big Omega notation specifically describes best case scenario.
    It represents the lower bound running time complexity of an algorithm.
    Basically it tells you what is the fastest time/behavior in which the algorithm can run.
    f(n) = Ω(g(n))
    IFF
    f(n) greater than or = c.g(n)
    where n greater than = n0, c greater than 0, n0 greater than = 1
    Big Theta (θ) notation -
    Big Omega notation specifically describes average case scenario.
    It represents the most realistic time complexity of an algorithm.
    f(n) = θ(g(n))
    IFF
    c1.g(n) less than or = f(n) less than or = c2.g(n)
    where n greater than = n0, c1,c2 greater than 0, n greater than = n0, n0 greater = 1
    Big Ω - Best Case
    Big O - Worst Case
    Big θ - Average Case
    Simple Snippets Official Website -
    simplesnippets.tech/
    Simple Snippets on Facebook -
    / simplesnippets
    Simple Snippets on Instagram -
    / simplesnippets
    Simple Snippets on Twitter -
    / simplesnippet
    Simple Snippets Google Plus Page -
    plus.google.com/+SimpleSnippets
    Simple Snippets email ID -
    simplesnippetsinfo@gmail.com
    For More Technology News, Latest Updates and Blog articles visit our Official Website - simplesnippets.tech/

КОМЕНТАРІ • 201

  • @SimpleSnippets
    @SimpleSnippets  4 роки тому +38

    Guys, if you liked this video & want many more such tech educational videos on this channel then please support me by subscribing to this channel & also share it with your friends too ✌

    • @aryaman5603
      @aryaman5603 4 роки тому

      please make a tutorial on visual basic

    • @killianjayden3949
      @killianjayden3949 2 роки тому

      I guess im randomly asking but does anybody know a tool to get back into an instagram account??
      I was stupid lost my password. I would love any help you can offer me.

    • @chandanakoram9836
      @chandanakoram9836 4 місяці тому

      How can we imagine the value of g(n) to be n,n2 like that

  • @JacobACoulson
    @JacobACoulson 3 роки тому +122

    Never stop making videos. This legit prepared me for my exam 100 times better than my professor did. I got an A on the exam because of you. Thank you so much!

    • @SimpleSnippets
      @SimpleSnippets  3 роки тому +14

      That's amazing to know Jacob ✌️ super happy for you and your amazing results too. Would be a great help if you could share our channel & videos with your friends too 😊

    • @georgikarastoychev1241
      @georgikarastoychev1241 3 роки тому +6

      Yes that is true i can not understand nothing from my professor too. This guy is pure gold learned almost everything from him. Never stop uploading man you are gifted! Thank you for everything

    • @convolutionalnn2582
      @convolutionalnn2582 3 роки тому +1

      @@georgikarastoychev1241 How can i be Software Engineer after 12 th commerce?

    • @GodOfFools
      @GodOfFools 7 місяців тому +1

      It's been 3yrs and this saved my life

  • @marifatjamal1235
    @marifatjamal1235 3 роки тому +12

    the most thoroughly and easily explained tutorial I have ever seen. Thank you a bunch!

  • @exodia_right_leg
    @exodia_right_leg 2 роки тому +4

    I have not even watched the video yet and I already know this this the best video I have every seen. I legitimately screamed in joy when I realized this was a Simple Snippets video.

  • @peanutsee
    @peanutsee 3 роки тому +15

    7mins into the video, I understood Big Oh better. Well played.

  • @amoswasike7484
    @amoswasike7484 3 роки тому +3

    Thank you very much, after having tried much to grasp what my lecturer explained with no success, yours has just been through. Keep up the good work!

  • @nicklloyd3090
    @nicklloyd3090 3 роки тому +21

    You are 3x better at explaining this than my college professor at ASU. You should be making the absurd tuition money she does

    • @SimpleSnippets
      @SimpleSnippets  3 роки тому +5

      Hehehe whats the full form of ASU ? which institute is this ?
      I wish I made that kinda money but surely in time I will earn a lot too. Right now my only goal is to provide high quality education to everyone 😇

    • @brianayon1461
      @brianayon1461 3 роки тому +1

      @@SimpleSnippets Most likely Arizona State University, I feel the same way

    • @frederickrichter1426
      @frederickrichter1426 3 роки тому +2

      I am also a student of discrete mathematics at ASU who is finally getting a clear explanation. Thank You!

    • @SimpleSnippets
      @SimpleSnippets  3 роки тому +1

      👍

    • @SimpleSnippets
      @SimpleSnippets  3 роки тому +2

      That's great to know Fredrick 😊

  • @nerodant85
    @nerodant85 2 роки тому +1

    Thank you for the video, I finally understand the concept because of you, thank you again !

  • @atlanta2203
    @atlanta2203 Рік тому +2

    Thank you so much for this! Honestly saving my exams by explaining it so clearly I finally understand :')

  • @Sunny-qe5el
    @Sunny-qe5el 3 роки тому +1

    Quite exemplary and to the point.
    Thanks for your work.

  • @nikolajnguyen4273
    @nikolajnguyen4273 Рік тому +4

    Whenever you choose a constant value c = ___ and a n0 value as n0 = ____, is it random that you choose the constant you chose?
    Is there a systematic way to do this, or would you just keep going with different n-values?

  • @funkemoney
    @funkemoney 3 місяці тому +1

    I'm glad I watched this after several videos. Thank you so much

  • @mortezarezaalipour9666
    @mortezarezaalipour9666 3 роки тому +18

    You are amazing!
    Straight to the point!
    Nice editting!
    I truly appreciate it :)

  • @availkrishmytube
    @availkrishmytube 3 роки тому

    This covers theory quite well unlike other videos

  • @User1-6t
    @User1-6t 5 місяців тому +1

    Thank you, teacher. we stand with you

  • @samidelhi6150
    @samidelhi6150 4 роки тому +1

    Hi simple , great explanation , would you kindly provide an example out of say ML algos where it is better to use say Big theta relative say to big O and big Omega ? Thanks

  • @MD-zw5nl
    @MD-zw5nl 3 роки тому

    Finally understood it. Thank you so much.

  • @Insan123_
    @Insan123_ Рік тому +1

    your explanation is the best!!! Thank you a lot!

  • @konodioda1268
    @konodioda1268 Рік тому

    Thanks, this will surely help me out in my midterm

  • @alexandraherr9530
    @alexandraherr9530 9 місяців тому +1

    This is a life saver man, thank you!!

  • @diegoferreirarapaci6856
    @diegoferreirarapaci6856 9 місяців тому

    6:10 in this example what if we consider c=2 ad n=2? We need to desconsider the number without an n quocient for it to work?

  • @fang8660
    @fang8660 2 роки тому

    Incredibly helpful video ~ thank you

  • @_tanujpokhriyal
    @_tanujpokhriyal 2 роки тому +1

    Bhaiya from where can i solve DSA questions...? Coz in geekforgeek , interviewbit they have only solution but not explaination (video explaination)

  • @som_girl6702
    @som_girl6702 Рік тому

    You rock! Thank you for sharing your knowledge

  • @geschichte4u251
    @geschichte4u251 10 місяців тому +1

    Thank you, men. Really helped me

  • @availkrishmytube
    @availkrishmytube 3 роки тому +1

    Is there a reason why you chose 2n+3 for f(n)

  • @deepakmaidasani1512
    @deepakmaidasani1512 3 роки тому +2

    As always amazing video and very nice explanation. Thank you so much!

  • @sudakishorekumar
    @sudakishorekumar 3 роки тому

    Thanks man for making such an awesome content

  • @codingwithanonymous890
    @codingwithanonymous890 4 роки тому +1

    fantastic..pls upload more videos for clearing concept

  • @DavidParathyras
    @DavidParathyras Рік тому

    Your explanation is excelent!

  • @izharkhankhattak
    @izharkhankhattak 2 роки тому

    Excellent job, man!

  • @MegaDoc360
    @MegaDoc360 2 місяці тому

    Excellent explanation.

  • @ketchup7867
    @ketchup7867 Місяць тому

    I love it - my professor should learn from you

  • @CursosIcarnegie
    @CursosIcarnegie 3 роки тому +2

    Hey Bro you saved me my máster course your explanation is awesome, God bless you regards from México

  • @abhinavl999
    @abhinavl999 Рік тому

    superb explanation

  • @Oscar-we5ke
    @Oscar-we5ke 2 роки тому +1

    Could anyone help me with this one? I understand Big O and the others, but my problem is finding c1,c2, and n0 for complex functions. Example: n^3/1000 - 100n^2 - 100n + 3. I need to express that one in order of theta notation.

  • @samarthyapatel2157
    @samarthyapatel2157 2 роки тому

    Keep up with the good work, thanks.

  • @nitismita1035
    @nitismita1035 2 роки тому

    I have a doubt,
    It's that can we get various pairs of c and n which satisfy the f(n)=o(g(n)). i. e for f(n)

  • @cf0e6d7b83
    @cf0e6d7b83 2 роки тому

    Thanks for explanation, nice video !

  • @tangent905
    @tangent905 2 місяці тому

    thanks a lot for such a amazing explanation :)

  • @yomnahamed7147
    @yomnahamed7147 3 роки тому +4

    Thank you so much . I really appreciate your works

  • @santoshpalli2109
    @santoshpalli2109 2 роки тому

    Nice explanation Sir

  • @funnyshiittt
    @funnyshiittt 2 роки тому +1

    It was amazing. Thank you.

  • @moshibudimathabatha2611
    @moshibudimathabatha2611 2 роки тому +1

    Well explained

  • @The_Programming-Teacher
    @The_Programming-Teacher Рік тому

    Thank you very much. You are a hero!

  • @ruskindrag9649
    @ruskindrag9649 3 роки тому

    Why do we take the closest to f(n) fn as the best case and the worst case scenario ,it has to be the farthest one right?So that for the best case if you take Omega(1) that will be the fastest taking less time compared to Omega(n).

  • @mellonviskaino9537
    @mellonviskaino9537 2 роки тому +1

    u r amazing. Thank u soooo much

  • @cinders-and-smoke
    @cinders-and-smoke 3 роки тому

    Best video on notations 💪

  • @samuelmaina6659
    @samuelmaina6659 8 місяців тому +1

    watching from Africa kenya. im already a teacher now because of this tutorial

  • @mustafag6334
    @mustafag6334 2 роки тому

    keep up the great work!!

  • @pankajmhaske09
    @pankajmhaske09 3 роки тому +1

    Nice explanation, but cases(best, worst and average) and asymptotic notations are two independent terms, like best case of linear search also can be mentioned as O(1).

  • @ProBuilder-ck2vk
    @ProBuilder-ck2vk 3 роки тому +2

    I don't understand where these constant values are taken from. How do determine if c should be 1 or 2 or whatever? Is it just pick a random number, or are there some logic behind it?

    • @punkgrl325
      @punkgrl325 2 роки тому

      You just drop the constants because what matters is the type of operation happening, not how many times it happens. So, O(2n), O(3n), O(4n), etc. can have their consants dropped to O(n), because they're all the same type of operation regardless (linear).

  • @cheems3202
    @cheems3202 Місяць тому

    You are a life saver bro

  • @ahmadxgame8885
    @ahmadxgame8885 9 місяців тому

    at 6:10 why did consider that c =5 but when n was powered by 2 we consider c =1 at 11:20 ?

  • @bhargavnagacharan1899
    @bhargavnagacharan1899 2 роки тому

    Best explanation ever ❤️❤️❤️

  • @georgey4151
    @georgey4151 4 місяці тому

    THANK YOU VERY MUCH SIR

  • @twinkleshaw693
    @twinkleshaw693 Рік тому +1

    best video ever found ❤

  • @liquidred257
    @liquidred257 2 роки тому

    So when I saw the example I paused the video and got
    Big O=n
    Big Ω=1
    Big θ= (n+1)/2 (because the average of n and 1 is n+1/2)
    I get why we get rid of the /2 for big θ, as it becomes negligible, so could the same be said of the +1?

  • @youssefmohamed-jt8qp
    @youssefmohamed-jt8qp 2 роки тому +1

    thanks bro really you are a legend

  • @freezinfire
    @freezinfire 2 роки тому

    Thank you very much.

  • @aleksandraaa2010
    @aleksandraaa2010 9 місяців тому +1

    Thank you some much for this video!! Thanks to you in 30 min I understood perfectly what my professor didnt explain properly in 10 hours :))

  • @kodandaraochellapilli6212
    @kodandaraochellapilli6212 Рік тому

    Do you have implementation for these concepts. Thank you for your help. It is very clear and simple. It is way better than my university teachings.

  • @muktagavli1106
    @muktagavli1106 2 роки тому +1

    Very good lecture

  • @ferhadmehdizade4772
    @ferhadmehdizade4772 3 роки тому

    Thanks, it helped a lot👍

  • @saladisatyanarayana7166
    @saladisatyanarayana7166 3 роки тому +3

    carry on broo..... ur explaination was awesome

    • @gloryleonard224
      @gloryleonard224 3 роки тому

      Am even using the tutorial to prepare for an exam this morning and is so helpful

  • @jamesstark4136
    @jamesstark4136 2 роки тому +1

    Thank you! Note: small error on Big theta slide, description says "Big Omega"

  • @user-dl7ui4ii6r
    @user-dl7ui4ii6r Рік тому

    thanks a lot, you are the best 😍

  • @ommishra6032
    @ommishra6032 Рік тому

    Bro how can Omega be the best case if we can still use constant to be more efficient ? plz help ..video was great and thanks Tanmay bhaiya for ur AMAZING CONTENT 😊😊..

  • @nitismita1035
    @nitismita1035 2 роки тому

    Thanks a lot 🙏Sir. Can you show some questions on this topic.

  • @master4755
    @master4755 Рік тому

    For the linear search can't you also have Omega(n) ? When you do the algorithm analysis you will end up with some linear equation such as f(n) = 3n + 2 , we can show its Omega(n) by doing
    3n+2 >= c * n , take c=1 and n=1, it works. The example you gave was theoretically correct , it should at best case be Omega(1) but mathematically following the definitions is it also true to say its Omega(n) too ? This makess the bounding tighter as well

    • @himanshibhardwaj5833
      @himanshibhardwaj5833 10 місяців тому +2

      He has said that there can be many best as well as worst cases.. though there can be many upper and lower bounds but we have to take the closest one that's why it is omega(1). Hope you understood.

  • @oliviazhai1831
    @oliviazhai1831 2 роки тому

    Thanks so much man

  • @samuelolayinka6948
    @samuelolayinka6948 Рік тому

    Thank you so much

  • @joshuatorres3342
    @joshuatorres3342 2 роки тому

    great video!!!

  • @gustavrisager8939
    @gustavrisager8939 2 роки тому +2

    Within the first 100 seconds this video explained Big-O better than my $200 textbook and my professor… combined.

    • @SimpleSnippets
      @SimpleSnippets  2 роки тому

      Haha thank you for this feedback. Would be great if you can transfer that 200 dollars to me 🤣
      Just kidding. Don't need donations. I'm happy that this video helped you 😊

  • @sunraiii
    @sunraiii 4 роки тому +2

    Decent tutorial! Thank you

  • @talahareb5863
    @talahareb5863 Рік тому

    literally youtube king

  • @CodeHive1
    @CodeHive1 2 роки тому

    Great content. Easy to follow and to the point. Wonderful!

  • @giggleglyphs
    @giggleglyphs 3 роки тому +1

    thanks for this video, even thanks for this playlist dude....:)

  • @M4v3RicK99
    @M4v3RicK99 4 роки тому +2

    Hey when are the rest of the videos (including hash tables, collision) in this series going to be released? Noticed you already started uploading videos on another series so I was hoping this would be completed soon!

    • @SimpleSnippets
      @SimpleSnippets  4 роки тому +3

      Working on it simultaneously 😅 sorry for the delay, it gets a bit hectic to manage multiple things. ✌️ Hope you understand 😁

    • @M4v3RicK99
      @M4v3RicK99 4 роки тому +4

      Thanks for the quick reply dude, your series are cohesive, easy to understand and very well put together so please take your time. Cheers.

    • @SimpleSnippets
      @SimpleSnippets  4 роки тому +2

      @@M4v3RicK99 thank you so much for such wonderful feedback and for understanding my scenario 🤘 will cover note topics soon. In the meantime I'll be a huge help if you share the videos with your friends and contacts 😊 that's the biggest support ✌️

  • @akashdwivedi4716
    @akashdwivedi4716 3 роки тому

    thnx for the help brother

  • @prempresents8776
    @prempresents8776 Рік тому

    In big o notation what is c constant, like u took c as 5 in example so how we have take and what's it's role I'm not understanding 😶

  • @Albert-of4pg
    @Albert-of4pg 4 роки тому +6

    hi, just a little suggestion: it's better to say f(n) is O(g(n)) or f(n) belongs to O(g(n)) instead of saying f(n) = O(g(n))

    • @jay-rathod-01
      @jay-rathod-01 4 роки тому +1

      Have you ever heard of a dialect of English that comes from India. Indian English bro.😁 I am serious

  • @albertd.bangura3794
    @albertd.bangura3794 2 роки тому

    You are great!

  • @certifiedsmartass4122
    @certifiedsmartass4122 Рік тому +2

    I have a doubt. If we need to find the closest fit to the best case time like you said, then shouldn't Big-Omega(n) have the constant as 2 instead of 1??
    2n < 2n+3 always
    Instead of 1n as 2n is a closer fit. Please tell me if I'm wrong with reason

    • @sangodan3031
      @sangodan3031 Рік тому

      With big omega you don't actually need to write what constant you use, whether it's 2n or 2000n it's still just O(n), you just have to find any constant to satisfy g(n) being bigger after n0 and you're set

    • @certifiedsmartass4122
      @certifiedsmartass4122 Рік тому

      @@sangodan3031 You're right mate. Thanks.

  • @AnujKumar-ev4fm
    @AnujKumar-ev4fm 3 роки тому +1

    really good explanation!
    sir

    • @SimpleSnippets
      @SimpleSnippets  3 роки тому

      Glad you liked it! Please support me by sharing the videos and our channel with your friends too. Thats the biggest help and support you can provide 😇

  • @cybermember2939
    @cybermember2939 3 роки тому +2

    Sir is f(n) is different algorithm for same problem because u took differ equation for f(n) and g(n), is f(n) is like refrence and we r comparing with g(n) to find best best ,worst and average case?

    • @Kucchuu
      @Kucchuu 3 роки тому

      Do not get confuse. Lets clear if f(n) = n^3+n^2+1 then g(n) is some derived portion of f(n) which is impacting your algorithm. Therefore here, g(n) can be n^3 i.e. g(n) = n^3 or g(n) = n^3+n or g(n)=n^3+5 etc. Both f(n) and g(n) belongs to same algorithm.

    • @black_eye7105
      @black_eye7105 2 роки тому

      @@Kucchuu I had also the same problem but i can't understand where the g(n) comes from can you explane. you saying derived portion what is derived portion

  • @naweddiwan
    @naweddiwan 2 роки тому

    when f(n) = 2n + 3
    Big Omega is Ω(n)
    Big Theta is θ(n)
    But for linear seach algorithm f(n) would also be like f(n) = a*n + b; where a and b are some constants
    Then why Big Omega is Ω(1) in this case?

  • @shreyaskulkarni526
    @shreyaskulkarni526 3 роки тому +2

    Thanks for this video bro...

    • @SimpleSnippets
      @SimpleSnippets  3 роки тому +1

      Most welcome Shreyas, please do share the videos & our channel with your friends too. Thats the biggest help and support you can give back to this channel! 😇

  • @dalisalvador9167
    @dalisalvador9167 2 роки тому

    Thanks bro

  • @DangThinh261
    @DangThinh261 3 роки тому

    Awesome !!!

  • @flipper71100
    @flipper71100 3 роки тому +1

    I don't understand one thing in this equation 2n+3

    • @ganashree8342
      @ganashree8342 2 роки тому +1

      omg d same doubt flashed to me as soon as he explained it.can someone please explain this.

    • @Oscar-we5ke
      @Oscar-we5ke 2 роки тому

      @@ganashree8342 Yeah, I understand what Big O and the others; for easy f(n), it is easy, but the problem for me comes when the f(n) is more complex. I have a lot of issues finding c1, c2, and n0.

  • @RAKSHITHPGBBTCSBTechCSE
    @RAKSHITHPGBBTCSBTechCSE 2 місяці тому

    why they is a curve in the f(n) line

  • @isfoo
    @isfoo 3 роки тому +1

    Equating O(.) notation with worst-case, Ω(.) notation with best-case and Θ(.) with average-case is incorrect. The O/Ω/Θ notations and "caseness" (worst/best/average) are independent concepts.
    It's a common misconception and I see nobody has pointed it out yet in the comments so I will explain why it's wrong.
    Let's start with that your mathematical definitions of the O/Ω/Θ notations are generally correct.
    Maybe would only highlight the fact that this notations are not exclusive to computer science or algorithms, but just describe the upper/lower/tight asymptotic bounds on the growth rate of a given function.
    Ok so the first minor inaccuracy is that when in 13:51 you have found out that f(n) is O(n) and f(n) is O(n^2) you've said that "when we try to find the O(.) notation we have to find the closest one which matches the f(n)". Well, no we don't have to. We have shown that indeed both O(n) and O(n^2) satisfy the mathematical definition and thus both are true. The reason we prefer the O(n) to O(n^2) is just because it gives as more information (it's a tighter bound).
    Now the big problem. At 24:10 you decided to analyse the time complexity of the linear search algorithm.
    So now it's true that it's Ω(1) and it's O(n), however it's NOT Θ(n). There is actually no function g(n) such that the time complexity is Θ(g(n)).
    That is because indeed Ω(1) is the tightest lower bound (for example it's not Ω(log(n))) and O(n) is the tightest upper bound (for example it's not O(log(n))). So you can see there is no g(n) which satisfies the condition c1*g(n) Θ(1)
    In the average case we have:
    Ω(n) and O(n) => Θ(n) // here we could say it's n/2, but we omit the constants
    So it's worst case Θ(n), best case Θ(1) and average case Θ(n). See that I used Θ(.) notation for each worst/best/average case. And the benefit of using Θ(.) for all cases is that it shows the tight bound. That is for example when we say it's worst case Θ(n) it means that it is not worst case Θ(1) and it is not worse case Θ(n^2).
    When we would use O(.) notation to describe worse case we can indeed say that it's O(n), but it's also true that it's O(n^2).
    So using Θ(.) gives us more information (it "forces" us to give the tight bound).
    This means that we should generally use Θ(.) notation as it gives us the most information. The problem however is that if we want to look at the general case of the algorithm the Θ(.) simply might not exist. So in that circumstance the best we can do is say that in general case this algorithm is O(n) and Ω(1).
    The only algorithms for which we can describe the general case complexity using Θ(.) notation are once for which worst case Θ(.) is the same as best case Θ(.). For example the problem of finding minimum value in n element array is worst case Θ(n), best case Θ(n) and average case Θ(n). So we can say that this algorithm has (in general) Θ(n) time complexity.

  • @SabbirAhmed-ev4rz
    @SabbirAhmed-ev4rz 4 роки тому

    Sir please make an video about greedy algorithm

  • @mohitsharmagarg
    @mohitsharmagarg 2 роки тому

    how to determine c in any algorithm

  • @keanaleong7745
    @keanaleong7745 Рік тому

    Thank yooou!

  • @gul3831
    @gul3831 Рік тому

    Amazing

  • @lakshmipathakamuri967
    @lakshmipathakamuri967 3 роки тому +1

    Superb sir nice explanation

    • @SimpleSnippets
      @SimpleSnippets  3 роки тому

      Glad you liked it! Please support me by sharing the videos and our channel with your friends too. Thats the biggest help and support you can provide 😇

  • @alienmo6653
    @alienmo6653 Рік тому

    great vid

  • @vaishnavinandane4050
    @vaishnavinandane4050 4 місяці тому +1

    best explain....u r amazing😃