Big O Notation - Full Course

Поделиться
HTML-код
  • Опубликовано: 24 июл 2024
  • This course will teach you how to understand and apply the concepts of Big O Notation to Software Engineering. Big-O notation is a way to describe how long an algorithm takes to run or how much memory is used by an algorithm.
    ✏️ This course was developed by selikapro. Check out his channel: / @kantancoding
    🔗 Twitter: / kantancoding
    🔗 Instagram: / kantancoding
    ⭐️ Course Contents ⭐️
    ⌨️ (0:00:00) Intro
    ⌨️ (0:00:39) What Is Big O?
    ⌨️ (0:07:08) O(n^2) Explanation
    ⌨️ (0:14:06) O(n^3) Explanation
    ⌨️ (0:26:29) O(log n) Explanation Recursive
    ⌨️ (0:31:12) O(log n) Explanation Iterative
    ⌨️ (0:36:08) O(log n) What Is Binary Search?
    ⌨️ (0:41:30) O(log n) Coding Binary Search
    ⌨️ (0:58:12) O(n log n) Explanation
    ⌨️ (1:02:50) O(n log n) Coding Merge Sort
    ⌨️ (1:17:04) O(n log n) Merge Sort Complexity Deep Dive
    ⌨️ (1:28:06) O(2^n) Explanation With Fibonacci
    ⌨️ (1:36:02) O(n!) Explanation
    ⌨️ (1:47:19) Space Complexity & Common Mistakes
    ⌨️ (1:55:53) End
    🎉 Thanks to our Champion and Sponsor supporters:
    👾 Wong Voon jinq
    👾 hexploitation
    👾 Katia Moran
    👾 BlckPhantom
    👾 Nick Raker
    👾 Otis Morgan
    👾 DeezMaster
    👾 Treehouse
    👾 AppWrite
    --
    Learn to code for free and get a developer job: www.freecodecamp.org
    Read hundreds of articles on programming: freecodecamp.org/news

Комментарии • 475

  • @adonbush4465
    @adonbush4465 2 года назад +237

    Wow! Been learning your beginner programming course but stopped because I can't follow on the big o notation part and been searching to learn more about it. You posted about it when I exactly needed it, thank you so much ! You guys are such a lifesaver!

  • @aishwaryasingh7753
    @aishwaryasingh7753 2 года назад +26

    Thank you for clearing the Big O notation concept in this video. I searched everywhere to learn that concept but didn't find any. So, when I came to know about this video, I'm extremely proud of myself for choosing this one. It has cleared all my concepts related to Big O and space complexity.

  • @nileshsaini09
    @nileshsaini09 2 года назад +36

    Two hours well spent!!!
    Amazing course, Clear and Concise Explanation of each topic. Thank you so much for making this video.

  • @bhargavpandya9189
    @bhargavpandya9189 2 года назад +23

    Quite possibly the best explanation of Big O that I have come across on the web period!

  • @konstantinrebrov675
    @konstantinrebrov675 2 года назад +60

    Simply amazing visualizations! A great teacher is able to break down complex topics, and visualize them intuitively, summarizing without removing any of the details, indeed making the details easier to understand.

    • @alkatheri-pk4hc
      @alkatheri-pk4hc 11 месяцев назад

      Allah! La ilaha illa Huwa (none has the right to be worshipped but He), the Ever Living, the One Who sustains and protects all that exists. Neither slumber, nor sleep overtake Him. To Him belongs whatever is in the heavens and whatever is on earth. Who is he that can intercede with Him except with His Permission? He knows what happens to them (His creatures) in this world, and what will happen to them in the Hereafter. And they will never compass anything of His Knowledge except that which He wills. His Kursi extends over the heavens and the earth, and He feels no fatigue in guarding and preserving them. And He is the Most High, the Most Great. [This Verse 2:255 is called Ayatul-Kursi.]
      [Surah al-Baqarah 2: 255]

  • @noobypro4560
    @noobypro4560 2 года назад +44

    You dont know how much i wanted this course
    thank you so much Free Code Camp
    you really deserve a lot of praise

  • @chachacha1289
    @chachacha1289 2 года назад +6

    I have seen a lot of different stuff but this one is the best! 2 hours well invested. Bravo and thank you for these crystal clear explanations!

  • @StarRoseAngelic
    @StarRoseAngelic 2 года назад +700

    Christ pls give me the attention span to get through this course. Amen

    • @julianosanm
      @julianosanm 2 года назад +32

      The hand drawing behind the screen doesn't help with that! Please stop using that it's distracting af!

    • @ahmed_raaphat
      @ahmed_raaphat 2 года назад +30

      Divide and conquer

    • @iansmith6844
      @iansmith6844 2 года назад +5

      I refuse to like this comment because it has 69 likes. I pray everyone does the same🙂

    • @melvinsaji2805
      @melvinsaji2805 2 года назад +9

      AMEN 🙏❤️🙏

    • @meenaalekhya3380
      @meenaalekhya3380 2 года назад +3

      meeeeee tooooooooooooooooooooo

  • @montyferguson4657
    @montyferguson4657 2 года назад +5

    This is what I'm currently learning in college and needed someone to break it down for me. Thanks 👍

  • @praffulpatil007
    @praffulpatil007 2 года назад +9

    This is pure gold 🤩 thanks for making such amazing content. Initial i did not expect to stay till end of the video but boy oo boy the content quality is so good that it kept me hooked.
    Love you guys 🤩

  • @rohankademani6406
    @rohankademani6406 2 года назад +9

    This channel is killing it it's like Top 1% of the content Thank you so much

  • @wyat_za377
    @wyat_za377 2 года назад +3

    THANK YOU.
    been wanting a video on this for a while

  • @iChrisBirch
    @iChrisBirch 2 года назад +14

    Great explanations and examples with good drawings. It is highly under appreciated when you take the time and effort to make your handwriting legible and use a consistent color pattern when explaining examples. This really makes a big difference visually in understanding the parts. Thank you so very much!

  • @jettergarcia3099
    @jettergarcia3099 Год назад

    Great explanation! So far this has been the easiest out of my 3 days of journey in just understanding the meaning of big o notation

  • @kd6164
    @kd6164 2 года назад +2

    Awesome video that really helped me to learn Big O and understand it better. Thank you selikpro!!

  • @yusoofali1254
    @yusoofali1254 2 года назад

    This is the best video i have found so far for understanding big O notations! Thank you.

  • @jeremiahnji6
    @jeremiahnji6 2 года назад

    Such a precise description of each time complexity and well organized. Ty so much!

  • @mihaisabadis2702
    @mihaisabadis2702 2 года назад

    thanks,just love for your work and collabs!

  • @spacewad8745
    @spacewad8745 2 года назад

    Nothing was glossed over. Everything was explained so well. Great job man!!

  • @momusic1427
    @momusic1427 2 года назад

    Great simplifications and visualizations ! Good job man . Thanks a lot.

  • @thebeaverkidd2970
    @thebeaverkidd2970 2 года назад

    I've looked at so many videos trying to find a person who explained it easiest and quickly and somehow the nearly 2 hour long video is the only one that did both of those

  • @lfzhu586
    @lfzhu586 2 года назад +2

    This is gold, you made Big O easy to understand

  • @jesser4221
    @jesser4221 2 года назад +1

    This is what I was waiting for. Thank you.

  • @MohamedOsama-gk9vg
    @MohamedOsama-gk9vg 2 года назад

    Yes thank you i've been waiting for this

  • @AleySoundz
    @AleySoundz 16 дней назад

    This is the most amazing tutorial on big o notation! Thank you!

  • @archive9558
    @archive9558 2 года назад +24

    It's like you guys can read my mind to know just what I'm searching for

  • @LoveTaiwan678
    @LoveTaiwan678 Год назад +1

    I love how you detailed the deep dive part of merge array. I'm a python beginner and I'm not good at recursive prgoraming, this video helps me alot, thank you❤

  • @smohanofficial
    @smohanofficial 2 года назад +2

    Very good and clear explanation, sorted many of the questions I had in mind. Thanks.

  • @mithilmehta1501
    @mithilmehta1501 2 года назад

    Trust me this is the best video for understanding O notation I have ever watched.

  • @bassam.2023
    @bassam.2023 11 месяцев назад

    This is the best video on time complexity on RUclips, period. 😀
    Thanks!

  • @philippeparisot6061
    @philippeparisot6061 2 года назад

    Thank you so much for this video! Desperately needed it!

  • @mrboyban
    @mrboyban 8 месяцев назад

    Thank you so much! This video is definitely a teaching masterclass. Great stuff!

  • @JC61Support
    @JC61Support 2 года назад +1

    Wish I had this source available 3 yrs ago. This is taught so well I had to watch it!

  • @owaisshaikh2144
    @owaisshaikh2144 Год назад

    This is the best big o notation course. Everything is explained very well. Thanks.

  • @alexandresantos7966
    @alexandresantos7966 Год назад

    Fantastic course, with amazing examples. Simple objective, now I can study better algorithms. Thank you very much!

  • @chidimbamalu3490
    @chidimbamalu3490 2 года назад +2

    Well detailed. Thank You so much!

  • @bishnukumarbhakat4892
    @bishnukumarbhakat4892 2 года назад +1

    This is a clear explanation of Big O.
    Thank you

  • @paulovinicius5833
    @paulovinicius5833 2 года назад +1

    Great course! Thank you for sharing.

  • @bhargavpandya9189
    @bhargavpandya9189 2 года назад +1

    Long time awaited!

  • @harshrai6259
    @harshrai6259 2 года назад +3

    Video is good because of the content and the implementation in javascript makes it even better.

  • @uajoku
    @uajoku 2 года назад

    Nice. The illustrations made understanding the big-O concept very easy. Thank you.

  • @idilsuozer8800
    @idilsuozer8800 Год назад +12

    the sound at 1:20:12 it got me cracking up lol.
    an amazing straightforward tutorial, thanks a lot!

  • @sirbalafort2620
    @sirbalafort2620 2 года назад +4

    At 1:05:40, you don't need to specify the last element of an array in the slice function. Leaving the second argument blank will do the trick, as specifying only one argument in slice goes to the end of an array by default.

  • @jazzinwithj
    @jazzinwithj Год назад

    Thank you so much for sharing this!

  • @SnobbyLion
    @SnobbyLion 8 месяцев назад

    Those "Big O notation in 10mins" videos were NOT cutting it for me. Thank you soo much!

  • @soubinan
    @soubinan 2 года назад +3

    You are a really good teacher!!! many thanks!!!

  • @ozzy4738
    @ozzy4738 Год назад

    This is the best Big O Notation video I have ever seen.

  • @Injamben
    @Injamben Год назад

    Great video. Thanks! Took awhile but well worth it.

  • @ebenezeradedotun4197
    @ebenezeradedotun4197 2 года назад

    This guy really did a great job... Thanks so much for this

  • @xhiah5894
    @xhiah5894 Год назад

    🐐🐐🐐Amazing video, don’t hesitate to make more

  • @cod3ddy74
    @cod3ddy74 9 месяцев назад

    wow! i'm so blessed, thanks for the course i now understand what Big O notation is!

  • @neerajsinghrawat710
    @neerajsinghrawat710 4 месяца назад

    Best course i ever watched ! simple to understand🤗

  • @sathvik.a.r
    @sathvik.a.r Месяц назад

    Thanks for the lecture! I now have a good grasp on this topic.

  • @franciscoaloi5769
    @franciscoaloi5769 Год назад

    Thank you again, and again! These are wonderful explanations

  • @hellentorres3510
    @hellentorres3510 2 года назад

    I love this explanation, thank you so much ❤

  • @aroicx7554
    @aroicx7554 Год назад

    best 2 hours i have spent on any course at all now i can say i understand the Big O notation

  • @MrDummy-sn5rb
    @MrDummy-sn5rb 2 года назад

    Insanely simple and precise

  • @ququ5463
    @ququ5463 9 месяцев назад

    this video is very helpful! thank you!

  • @kontranorth6159
    @kontranorth6159 3 месяца назад

    Thank you. This helped me a lot.

  • @stevehoang9
    @stevehoang9 2 месяца назад

    That is the best explanation about Big O notation I have ever seen 🤯

  • @jasonzeng5544
    @jasonzeng5544 Год назад

    Great video explaining it. Very easy to understand from the visual examples.

  • @joaozanlorensi
    @joaozanlorensi 2 года назад

    Excellent course! Thank you.

  • @adibalan4956
    @adibalan4956 22 дня назад

    wow! amazing work/ on point ..thank you

  • @andreulle1901
    @andreulle1901 2 года назад

    Thank you so much for your explanation! It was really helpful!

  • @HeartStargaming16
    @HeartStargaming16 Месяц назад

    Thank you very much Giorgio thompson! Easily the best video explaining big 0 notation in my opinion

  • @ryanolsen540
    @ryanolsen540 2 года назад

    Thank you for this info! I really appreciate the help

  • @Recluse7477
    @Recluse7477 2 года назад

    YES finally something about my favourite topic!

  • @KrishanuDebnath-vv9cs
    @KrishanuDebnath-vv9cs 6 месяцев назад

    You make it so easy, best channel in RUclips man

  • @user-wr4yl7tx3w
    @user-wr4yl7tx3w Год назад

    This is the one video that finally helped me to understand big O

  • @user-yf2qv6gq1q
    @user-yf2qv6gq1q 8 месяцев назад

    Thanks for the in depth explanation

  • @fazlechistyhimel3958
    @fazlechistyhimel3958 Год назад

    What a great explaination. Thanks a lot man. Im loving it.

  • @jaxontn
    @jaxontn Месяц назад

    WOW THANK YOU SO MUCH, Time complexity is so easy to understand now!

  • @momentswithmanisha
    @momentswithmanisha Год назад

    Best explanation for time complexity calculation. Thanks!

  • @TormentiumMx
    @TormentiumMx Год назад

    Really thanks for the help!

  • @divyaakula605
    @divyaakula605 11 месяцев назад

    Thank you your video helped me so much!

  • @veyselbasbaydar5665
    @veyselbasbaydar5665 2 года назад

    the best O notation tutorial !!!!!!!!!!!!

  • @mdmustaqahmed5391
    @mdmustaqahmed5391 2 года назад +2

    Hey Brother...! Great Tutorial , Loved it and Understood every bit of the Tutorial. Hope you make more videos on Data structure and algorithms. I am really looking forward to learn from you . God bless you.

  • @luiscarrillo1494
    @luiscarrillo1494 Год назад +5

    Studying for my computer science midterm. Great video helped me a lot!

    • @mihnea4924
      @mihnea4924 Год назад

      Studying this for my national Olympiad ☠

  • @youssefgalal7938
    @youssefgalal7938 2 года назад

    Such a nice guy and i loved this tutorial so much , it's so different

  • @sanjitselvan5348
    @sanjitselvan5348 Год назад

    Thanks for the wonderful explanation!

  • @enzopguerraeg
    @enzopguerraeg Год назад

    Must say that thats the best tutorial related to the subject!!!

  • @tracymmary3057
    @tracymmary3057 Год назад

    Wow! Amazing explanation.

  • @collinsadombaffour1231
    @collinsadombaffour1231 2 года назад +1

    Awesome tutorial !!!

  • @anonymousgerman2809
    @anonymousgerman2809 2 года назад

    Man seriously I was thinking about this today only that how hard it is and your came like a magic

  • @courtneynel7433
    @courtneynel7433 Год назад +1

    This has been one of the most helpful videos I've seen since I started self-learning. Not only do you explain time complexity in bite-sized bits, but you also explain frequently used algorithms and their everyday applications! Thank you!

  • @vivekach1
    @vivekach1 2 года назад

    Thank you so much!! Its very easy and understandable. Awesome :)

  • @myblrapp9627
    @myblrapp9627 2 года назад +1

    I wish Such kinds of youtube courses were available during my college days. But till now my learning appetite is increasing exponentially.

  • @hieuhuynh4478
    @hieuhuynh4478 Год назад

    i really love you, thank you so much, from the bottom of my heart

  • @santoshpalli2109
    @santoshpalli2109 Год назад

    Thank you so much for very detailed explanation.

  • @G971King
    @G971King 2 года назад

    Thank you so much for this fantastic video.

  • @namangupta9582
    @namangupta9582 2 года назад

    Awesome video!!

  • @adrianorobson6365
    @adrianorobson6365 7 месяцев назад

    Thanks for this great content.

  • @adetolasanni007
    @adetolasanni007 Год назад

    This video ease up my brain on Big O notation. The video is good. Thank you.

  • @josephsanjivi795
    @josephsanjivi795 2 года назад

    This is teaching at its finest!

  • @codezamacodinglabs
    @codezamacodinglabs 2 года назад

    Hats off to you bro. Wonderful job 👏.

  • @truongngo6197
    @truongngo6197 2 года назад +1

    OMG i'm studying it on school and u guys help me so much

  • @glorysonhorace3265
    @glorysonhorace3265 2 года назад

    I like your explanation, sir. Very clear and precise

  • @jayantasamaddar1446
    @jayantasamaddar1446 2 года назад +2

    1:15:30 -
    (i) Actually in the merge function (helper for mergeSort), you can exit the while loop earlier, instead of using &&, you can use || (OR) instead because you are presuming to use two sorted arrays as the function arguments anyway (otherwise, the two-way merge will not work). What that means is, if any one of these arrays are already part of the final merged Array (i.e. we have traversed through at least one of the two arrays, that means we can simply concat the other array which still has elements not added to the merged Array, to the end of it, without any further thought).
    (ii) The concat method can be used like this instead of two concats.
    ```
    const merge = (arr1, arr2) => {
    let i = 0;
    let j = 0;
    const mergedArr = [];
    while (i < arr1.length || j < arr2.length) {
    if (arr1[i] < arr2[j]) mergedArr.push(arr1[i++]);
    else mergedArr.push(arr2[j++]);
    }
    return mergedArr.concat(arr1.slice(i), arr2.slice(j));
    };
    ```

    • @Milorae
      @Milorae Год назад +2

      If you use OR you can get out of range for one of the arrays.

  • @ffa325
    @ffa325 2 года назад

    Nice vid bro thanks for the lesson