Introduction to Graph Theory: A Computer Science Perspective

Поділитися
Вставка
  • Опубліковано 8 чер 2024
  • In this video, I introduce the field of graph theory. We first answer the important question of why someone should even care about studying graph theory through an application perspective. Afterwards, we introduce definitions and essential terminology in graph theory, followed by a discussion of the types of graphs you may encounter. We then define several ways to represent graphs as a data structure and finish off the video with a discussion of what types of interesting problems you can ask about graphs to help motivate the ideas in future videos.
    Typo correction: at 5:12 the vertex set V should be {0, 1, 2, 3, 4} instead of {0, 1, 2, 3, 4, 5} (there is no vertex 5).
    Big thanks to Dániel László Bertalan for making the closed captions for this video!
    The sudoku example was inspired by this incredible reddit visualization: / visualizing_the_sudoku...
    Support: / reducible
    This video wouldn't be possible without the open source manim library created by 3blue1brown: github.com/3b1b/manim
    Here is link to the repository that contains the code used to generate the animations in this video: github.com/nipunramk/Reducible
    Music:
    October by Kai Engel freemusicarchive.org/music/Ka...
    November by Kai Engel
    freemusicarchive.org/music/Ka...
    Cobweb Morning by Kai Engel
    freemusicarchive.org/music/Ka...

КОМЕНТАРІ • 378

  • @einsteinnewton7121
    @einsteinnewton7121 4 роки тому +1024

    3Blue1Brown of Computer Science. Brilliant video.

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

      Absolutely.

    • @IsaacJoshi
      @IsaacJoshi 3 роки тому +52

      When I was watching this I thought hmm why does 3B1B's voice sound different

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

      haha even i thought so

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

      Absolutely Brother. Such nice content in this vast ocean of copy cat junks.

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

      @@KonigKlack They are. He gives credit in the notes below the video.

  • @OliFarhaan
    @OliFarhaan 2 роки тому +422

    I was unable to take admission to an engineering college to pursue Software Engineering due to my financial conditions. But I never lost hope I am studying on my own self and I feel privileged that I came to know about your channel. Thank you so much for such valuable content.

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

      Are you indian or paki?

    • @harrykekgmail
      @harrykekgmail 2 роки тому +20

      I wish you success

    • @OliFarhaan
      @OliFarhaan 2 роки тому +13

      @@harrykekgmail I wish you too :)

    • @robertalbus4430
      @robertalbus4430 Рік тому +36

      I am a self-taught software developer with an established career. you can do this too. university is not required. the best advice to all readers is to start with web dev because it is the easiest path to starting a career. then on your own time study CS and interesting problems - because of this you will gain a fabulous education and your career will advance.
      good luck Ali Farhan

    • @chafikthewarrior
      @chafikthewarrior Рік тому +7

      I am an autodidact Data Scientist, i started with Web development and i did everything using only google, no school. You can do it but you need to be 10 times better than the others may god help you in your journey.

  • @AlessandroBottoni
    @AlessandroBottoni 3 роки тому +129

    This is by far the best video regarding graph theory I have seen in my (quite long) life. Extremely clear, extremely accurate and extremely useful. As "Einstein Newton" here said 8 months ago, this can be considered the 3Blue1Brown of Computer Science. Congratulations!

  • @gauravnikam8843
    @gauravnikam8843 2 роки тому +70

    Introduction :- 0:00
    Why Study Graph :- 1:33
    Definition :- 4:35
    Terminologies :- 5:22
    Types of Graph :- 8:32
    Representation :- 10:15
    Graph Problems :- 12:44

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

      Pro-tip: if you put the timestamps on the left, they'll line up better.

  • @alonebuthappy33
    @alonebuthappy33 3 роки тому +53

    This is going to be one of the most popular study channel in the future ♥️

  • @FunMining
    @FunMining 4 роки тому +235

    This is a great channel, definitely will get much more recognitions in the future!

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

      I'm from the future! You were right. Just discovered this channel and I love it.

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

      It's happening

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

      I agree :)

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

      I am from far future

    • @gytzero
      @gytzero 8 місяців тому

      Just found this, from the farer future

  • @youssefel-mahdy922
    @youssefel-mahdy922 2 роки тому +4

    I think it is the best video on UA-cam that discuss and give an existing introduction about graph theory. It was my duty to thank you for this video!

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

    4 years into software engineering and had to refresh the knowdlegd on this. SO far the best explanation of such complex and abstract for many topic graphs. A true GEM video. Thanks!

  • @KoraxLP
    @KoraxLP 4 роки тому +13

    Your videos are absolutely amazing ! Especially your recursion video helped me immensely. Looking forward to more of your work. Keep going, this channel is going to be big! The video quality is just soo goood.

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

      Thank you! Glad you find these videos helpful and yup I have so many ideas for content so don't plan on stopping any time soon :)

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

    Beautifully explained and easily understandable to someone who knows little to nothing about graph theory or computer science. Keep up the good work!

  • @kingdel0xe
    @kingdel0xe 3 роки тому +26

    There is a small mistake at 4:15
    You would need to connect every point on a column with every other point on the same column same for the rows. Otherwise a graph coloring algorithm wouldn't work here, since graph coloring algorithms only test for the constraint that each neightbor has a different color.

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

    Man!... your animations blow my mind 🤯 brilliantissime!!! Please keep doing them. I spent a moment on YT to find something understandable about graphs... and I found you! Thank you very much 🙏🏻🙏🏻

  • @Thegamer-kf8zz
    @Thegamer-kf8zz Рік тому

    I love the mission of this channel! We need more interesting ways to delve into computer science for people who don’t want to sit down for 2 hours to understand fundamental (often complex) computer science topics!!! KEEP UP THE GOOD WORK!

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

    thank you SO MUCH for always providing representation of everything in terms of data structures. this is a differences between a topic being complete jargon and an actually making practical sense

  • @MrKyltpzyxm
    @MrKyltpzyxm 3 роки тому +16

    I like the little bit at the end regarding the path through each vertex only once.
    Welcome to graph theory 101. After some foundational examples let's jump straight to proving that P=NP. lol

  • @symonzhu9153
    @symonzhu9153 4 роки тому +13

    wow never would've thought about sudoku like this - that's awesome!

  • @aakdani11
    @aakdani11 3 роки тому +20

    Dude the way of explained this topic is so amazing and you made it look so easy to understand, It is so hard to understand this topic from books for someone like me. Thanks alot for your help. GOD bless!!

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

    Thank you for this video, I’ve been having a hard time motivating myself to start studying the graph theory chapter for my discrete math class, and this has helped me to finally open my textbook!

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

    The amount of time and care taken to produce this video shows. This is my first time on this channel and i'm looking forward to going through it more.

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

    Never seen a solution to a sodoku with graph theory! I just learned this to prepare for some competetive programming, I knew it was possible to solve using some disgusting nested for loops, but never knew graph would be a solution. Thank you!

  • @bish-jyag3371
    @bish-jyag3371 27 днів тому

    Very nicely presented, clear and concise. You are the great teacher.

  • @ankitshaw6307
    @ankitshaw6307 11 місяців тому +1

    Amazing Explanation !! You explained such a complex topic in so easy to understand language. I learnt a lot today and also found out interesting ways to visualize a graph. Thank you !!!

  • @robertcormia7970
    @robertcormia7970 8 днів тому

    This was GREAT! I'm boning up on graph theory for cheminformatics, and this is providing a great foundation!

  • @MythicalMaestro69
    @MythicalMaestro69 3 роки тому +10

    Imagine Every Single Teacher in The World Teach Like HIM!! I mean there is no Teacher in my College who teach like him. His Explanations are clear and the way he presents his presentation is easy to understand and not boring to watch.

    • @m322_yt
      @m322_yt 3 роки тому +7

      well, I presume no teacher has a couple of weeks/months time to prepare a single lecture that introduces basic concepts

  • @antontsvil245
    @antontsvil245 5 місяців тому +1

    Im just can't thank you enough, this video was so enlightening that actually gives me a hope, it proves that I am able to learn and understand hard concept w/o expensive education. Eventually I would become a programmer.
    Thank you from the bottom of my heart

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

    I'm so happy I got here. I'm a completely new to all of this yet I cam out understanding every single thing you just said. That was amazing. Thsnk you so much

  • @markomozina7894
    @markomozina7894 4 роки тому +11

    Another great one. Can’ t wait for more:)

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

    Superb breakdown of the subject. Had no idea before the video and now I really understand if fundamentally.

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

    This was your first video that i saw amd let me say I'll always come here whenever there'll be a new math concept in CS that i want to understand.
    Cheers👍

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

    Brilliant elegant explanation, wow. Thank you one thousand times !

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

    Explain theories with clear diagrams and clear pronunciation. Great !

  • @sliddjur
    @sliddjur 3 роки тому +11

    As a network engineer, this is really interesting! I visualize my networks with python and networkx and dot-graphs. Really fun!

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

    hats off, the production quality is mind boggling.

  • @rmt3589
    @rmt3589 6 місяців тому +1

    This is amazing! Reminded me of Vector Art, Wave Function Collapse, and Neuronets a lot.
    I have learned a lot, and deffinately want to learn way more!

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

    What a clean video anyone can understand from images itself
    Thanks a lot for this

  • @reubenvandermerwe480
    @reubenvandermerwe480 7 місяців тому

    Great video. Simple and easy to understand, and yet it gives a great overview of graph theory concepts.

  • @sooniesleardamer3871
    @sooniesleardamer3871 4 роки тому +7

    Keep on going! Your channel is just amazing! (Watching from France)

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

    Brilliantly explained the concept of graph theory. Thank you.

  • @NaveenKumar-os8dv
    @NaveenKumar-os8dv Рік тому +6

    If everyone was like you, study wouldn't not be tough. Thank you for this video and graph theory explanation. What you made is not just knowledge, but enlightment for me. You do it like its a cake to you, and I actually understand your explanation.

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

    Just discovered your channel. I'm about to binge everything you've made.

  • @Kyle-xk2rb
    @Kyle-xk2rb 2 роки тому

    As a CS student this is really good content. Love all the videos you make!

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

    Beautifully explained. Thank you!

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

    very good video, thank you so much, keep up the good work, watching 2 days before an exam

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

    Great Introduction to Graph Theory. Amazing Explanation.

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

    Your videos are so well explained. Wish i had a teacher like you from high school...

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

    Wow!! Amazing Video. One the best video, I have ever seen.

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

    Great video !!! It Accomplish his goal of giving an introduction on the topic.

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

    Thank you for existing!

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

    Awesome video! Can't wait to see more videos like this being posted!

  • @SebastianLopez-nh1rr
    @SebastianLopez-nh1rr 3 роки тому +2

    I came here because of 3B1B, please keep up the good work. You've got great potential.

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

    I will sit and watch all your videos one by one

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

    Please keep up these sensational videos, incredible amount of work and effort gone into these!

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

    Taking this as a grad level course rn. Its very stimulating for visual learners

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

    Why didnt i find this channel sooner? Love this

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

    this video was better than most videos on youtube related to graphs

  • @zaidmermam2524
    @zaidmermam2524 11 місяців тому +1

    absolutely amazing explanation!

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

    A very interesting video that explains the concepts well. Very inspiring.

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

    Fantastic, just needed info for programming.Thank you.

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

    I think I'm in love, thank you for the video!

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

    very nice, thanks for the vizualisation and soothing music

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

    Thank you very much, that was a great introduction. Much appreciated

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

    Simply awesome ! keep the good work going 👍

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

    Awesome video. Thank you!

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

    Excellent Channel and very informative with rigor.

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

    Excellent video and narration

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

    thank you very much for this explanation !

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

    Outstanding presentation.

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

    i cant read my college material for this particualr topic and found your videos, ist really great!!

  • @andy-kg5fb
    @andy-kg5fb 3 роки тому +1

    I love this style of video.

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

    The Sudoku example is outstanding and useful.

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

    Thank you, nice introduction!

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

    Thank you for putting subtitles

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

    Wow, so glad I found this channel. Subbed.

  • @ryanmckenna2047
    @ryanmckenna2047 2 дні тому

    Very nicely introduced, I hope you have some very complex cutting edge applications of graph theory to show off :)

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

    Absolutely smooth!

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

    Thank you so much for the video, please make a whole playlist of videos on the graph theory course that they teach in Universities

  • @AssemblyWizard
    @AssemblyWizard 3 роки тому +16

    2:53 Ironically I thought Sudoku would be the first example lmao, but well played

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

    Nice introduction. Now I understand why git commits are directed acyclic graphs. Thanks man!

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

    Very well explained. Subscribed!

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

    nice channel i just found it today, i like the concise summary's of topics

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

    The sudoku Example was the best! Please make more videos on graph theory

  • @user-bv5eu3zk5w
    @user-bv5eu3zk5w 8 місяців тому

    Great Video, Thank you!

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

    This was super helpful thank you!!!!!

  • @ItsMe-yb1zn
    @ItsMe-yb1zn 7 місяців тому

    Thank you so much for your effort, It was a very informative and very interesting video

  • @judyju7416
    @judyju7416 10 місяців тому

    Amazing video !!! Thank you !!!

  • @paulomartins1008
    @paulomartins1008 3 роки тому +8

    You need content.
    Binge watchable sets of 20+ min videos on related topics from video to video.
    Trust the community.
    Keep it up great job.

  • @User-ty2ml
    @User-ty2ml 2 роки тому

    i wish anyone who has interest in Graph, Watch this, the very first Day. Great Work, Thanks!!!!

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

    Absolutely amazing content.

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

    Amazing! Thank you!

  • @lk9895
    @lk9895 8 місяців тому

    Explained very properly!

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

    nice explanation. Thank you very much.

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

    Keep on going! Your are doing an amazing work!!

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

    Just found you channel through this video. Great presentation.

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

    Thank you so much! This was very helpful.

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

    I spent a few hours building a Graph data type in Haskell (and I do not remember why), and how I did it was as a (cyclic) list of pairs, where the first entry is the node value, and the second is a list of offsets of the node's neighbors. For example, it would represent the graph at 12:38 as [(0, [1,2,3]), (1, [4, 2]), (2, [3, 1]), (3, [2, 3, 4, 1]), (4, [4])]

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

    Thanks! This was great!

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

    It feels so great that Grant has inspired people to follow this cool way of explaining things, keep up !!!

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

    great channel ,please continue making such great videos .

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

    best video for introduction to graphs....

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

    Excellent video!