Introduction to Graph Theory: A Computer Science Perspective

Поділитися
Вставка
  • Опубліковано 28 вер 2024

КОМЕНТАРІ • 394

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

    3Blue1Brown of Computer Science. Brilliant video.

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

      Absolutely.

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

      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 роки тому +4

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

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

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

  • @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 :)

  • @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!

  • @Thegamer-kf8zz
    @Thegamer-kf8zz 2 роки тому +1

    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!

  • @goober3666
    @goober3666 3 місяці тому

    this video is oddly beautiful, i absolutely despised this whole semester of discrete math but you kinda got me invested

  • @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])]

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

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

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

    What an amazing video. I am about to take graph theory next semester, your video absolutely makes my hope high for that course now. Keep the good work, hope the channel to get more attention in the future.
    P.s: Is that possible if you can give a link to the script of the video or the summarize of what you talk about in the video. It will become a super helpful study material.

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

      Thanks for the wonderful comment, I really appreciate it!
      That's an interesting idea, l think the easiest solution would be adding text files for scripts into the linked Github under a new folder. I'll try to remember to do that when the next video comes out (should be in 1 - 2 weeks).
      I will warn you, however, the scripts have a ton of notes on them about random animation files and things I need to remember when editing it all together that I probably won't have time to go back through and remove, so by no means will it be the cleanest "video script." Hope that's alright haha.

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

    Great Introduction to Graph Theory. Amazing Explanation.

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

    I can not believe that I found and used the adjacency list by myself some time ago in a sketch without knowing it is a thing. I think it is the proof that the adjacency list is the most usefull representation

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

    No of edges is same as number of neighbors has helped me to understand related topics in terms of visualizing, thanks!

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

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

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

    very nice, thanks for the vizualisation and soothing music

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

    The Sudoku example is outstanding and useful.

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

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

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

    Outstanding presentation.

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

    Just found you channel through this video. Great presentation.

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

    Excellent video and narration

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

    Beautifully explained. Thank you!

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

    Wow, so glad I found this channel. Subbed.

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

    Thanks! This was great!

  • @EW-mb1ih
    @EW-mb1ih 2 роки тому +2

    At 5:06, a small mistake: you should have writeen V = {0, 1, 2, 3, 4} and not V = {0, 1, 2, 3, 4, 5}

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

    This music making me wanna cry, it is not that sad concept : P : P

  • @علاءالدينالزوج
    @علاءالدينالزوج 2 місяці тому

    Interesting explication, well done

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

    Why was it important to change numbers to colours in the sudoku?
    Thanks for this incredible video btw.

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

    Great Video!! Thank you!

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

    👍👍👍 Nice explanation.

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

    thanks a lot. I have learned a lot from your video

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

    You should do more videos like this and your series, on a*, best first search, etc.

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

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

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

    Great Video, got me Subscribed!

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

    What an excellent video sir

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

    Great video & awesome content

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

    Thanks so much!

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

    I wish i could give this video more than one like...

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

    Fantastic video!!!

  • @user-wc1sm8cj8s
    @user-wc1sm8cj8s 3 роки тому

    *Great Video. Thanks!!!*

  • @s4ulyaniv35
    @s4ulyaniv35 28 днів тому

    05:05 I don't see 5 as belonging to V. Another comment I have is that maybe you should not use n-uplets inside E, but instead sets, as the order doesn't matter at 05:10. Great video though, thank you.

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

    UA-cam's application of graph theory brought us here from 3Blue1Brown

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

    Great video! But, I learned it that way that this notation (n1, n2) is for directional edges and this notation {n1, n2} is for non-directional edges. Well, I just wanted to say that. But great video nontheless.

  • @RipeCloud
    @RipeCloud 27 днів тому

    thanks mate

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

    is there a relation between graph theory and automata and formal languages?

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

    What software do you use to make these? i belive 2 blue 1 brown uses python, is it the same? how do you get the graphics?

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

    Are you gonna upload more work in this field? like... not only for computer perspective but also mathematics perspective

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

      This topic is from a Discrete Mathematics course which is designed for Computer Science students/ Math majors aren’t required to take

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

    What animation software do you use?

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

    HELLO THERE WICH BOOK DO YOU SUGGEST AS AN INTRODUCTION IN GRAPH THEORY ?

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

    BG music game on point

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

    nice video

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

    Has anyone else stopped the video at 3:05 to try to solve the sudoku?

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

    At 4:15, the list of edges for coloring the graph to resolve a sudoku is incomplete or some edges are stacked one on top of the other as to make it impossible for somebody that is new to coloring to figure it out. It would have been better to isolate one node and show the 8 edges going to the nodes in it's section plus the 8 edges going to the nodes on the same row plus the 8 edges going to the nodes on the same columns.

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

    "Why should we care about graph theory?" not the most important question, the most important question is "Why does graph theory have a confusing name?" I would not be surprised if anyone that holds no interest in maths or engineering has never heard of the word graph being used to describe a mesh or map of points, rather they like me would've thought a graph meant those diagrams used to display statistical data and similar stuff, until this vid I would not have ever connect the phrase "graph theory" with meshes and maps

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

    What's the algorithm used for graph colors & sudoku?

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

    The sudoku-"example" was misplaced: no explanation of why, how or what is going on - just that "we can use this"..... In the end it is a coloring-problem that, for sudoku, is usually solved by brute force - try a coloring, check if it is a valid solution, rinse and repeat till you find one that works.

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

    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 роки тому +22

      I wish you success

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

      @@harrykekgmail I wish you too :)

    • @HghgBoovier
      @HghgBoovier 2 роки тому +38

      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 Рік тому +8

      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.

  • @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 Рік тому

      Just found this, from the farer future

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

    tf is wrong with me, you got me tearing up

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

    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!

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

    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.

  • @alonebuthappy33
    @alonebuthappy33 4 роки тому +54

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

  • @l.w915
    @l.w915 3 роки тому +4

    i can’t help but notice it has been quiet a while without any new videos... hope you’re doing all right

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

      Ha thanks, appreciate the comment! Been quite busy with life outside of UA-cam, but I am working on it! New video will be out when it's ready :)

    • @l.w915
      @l.w915 3 роки тому +1

      @@Reducible glad to hear that😃

  • @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

  • @gauravnikam8843
    @gauravnikam8843 3 роки тому +73

    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.

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

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

  • @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!!

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

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

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

    I can not believe all of this is for free

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

      "What a time to be alive" as quoted by TwoMinutePapers

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

    *subscribes*. Could anyone point to how to apply graph problems to natural science scenarios? For instance, I imagine one can k-color or cycle-detect a graph representing predation nets but I'm not sure _what it would mean or represent_. Any info/links would be greatly appreciated since I want to give my (primary school) students examples they can relate to. ty.

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

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

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

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

  • @zamoqi
    @zamoqi 6 місяців тому +3

    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!

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

    7:00 question about cycles. Lets say I went from 4 to 1 to 0. But then I went up to 3, and back to 1 then to 4. Would that be a cycle? Or does the overlap at 1 make it not a cycle?

  • @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!

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

    10:6 doesn't the first property imply the two others ?
    If we add an edge between a vertex A and a vertex B, there will be now two paths from A to B (one that was already there, one that was just added) creating a cycle.
    If we remove an edge between vertex A and vertex B, it will remove exactly one path from A to B, making the total number of paths from A to B zero, disconnecting the graph.

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

      Yes. This is an example of the graph theory: by simply imposing a “relationship” between elements we induce a wide variety of properties. For instance, in any graph the number of nodes with odd degrees is even. Unfortunately, the video is limited to listing basic objects of the graph theory without touching the theory itself.

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

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

  • @anonymous-in5fp
    @anonymous-in5fp 3 роки тому +2

    You should really do a collaboration with 3b1b.

  • @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!

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

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

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

    10:10 If a graph is connected and undirected doesn't adding an edge *always* create a cycle?

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

    i love math so much i wanna tell everyone about it

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

    I know most of us are here because of tideman XD

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

    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

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

    3:48 the connection line between top mid circle to bottom left circle is missing, and due to copy-paste it translated further....

  • @alex0917lfo
    @alex0917lfo 4 роки тому +9

    Is that possible that you can talk about dynamic programming?

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

      Yes, Dynamic Programming is absolutely a video I'm going to make in the future. I have a mix of some standard and tricky dynamic programming problems I may go through but still want to hash them out so I can make the best possible video for that topic. I have a few graph algorithm videos that I have a little more clarity on that I am working on currently, so after I finish up those, I will spend more time on the dynamic programming video so stay tuned! The plan right now in my mind is that the next few videos are going to be on DFS, BFS, Djisktra's, and A* search and somewhere in between or after those videos, I'll release a DP video.

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

    Please make more content on Graphs!!

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

    Does anyone please know why are Reducible's and 3blue1brown's graphics so similar? I mean, do they collaborate or something like that or is it a software anyone can use? Thanks
    Edit: I found out it's called Manim, an open source software by 3b1b. I'll leave the comment for anyone else wondering the same.

  • @annashtraus7800
    @annashtraus7800 17 днів тому

    OMG why putting background music in educational videos??!! Completely puts me off - having to repeat every 15 secs multiple times just to be able to hear the words and not the music. The video is great but really, any educational material should be presented in full silence to give people ability to concentrate instead of being distracted by music.

  • @rmt3589
    @rmt3589 10 місяців тому +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!

  • @antontsvil245
    @antontsvil245 9 місяців тому +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

  • @dark-dayone4939
    @dark-dayone4939 5 місяців тому

    Absolutely agree. 3Blue1Brown of computer science. Crisp, succinct and clear explanations of concepts. Love this..

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

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

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

    Brilliant video. are there any recommendation on learning resources you can suggest while we wait for the next in the series?

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

    You're a goddamn cycle path 7:07

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

    15:15 who else has spent hours trying to find a solution? I swear I’ll get it
    Edit: 2 days later and I’m fairly confident I have it all understood. Give me a little more time and I could write out a program for it. General consensus still wins unfortunately because my program would involve exponential functions which would likely run into the same exact efficiency issues computer scientists deal with today with large networks. Still a really fun exercise to learn on my own the fundamentals of how to reduce a network using basic logic that a computer could read.

  • @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.

  • @LoayAl-Said-j8p
    @LoayAl-Said-j8p Місяць тому

    I love the experience or watching the video!,
    So immersive. and the content is kinda wholistic,
    Thank you so much!

  • @ankitshaw6307
    @ankitshaw6307 Рік тому +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 !!!

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

    Great video! Thank you so much. God bless :)

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

    Excellent knowledge, excellent animations, awfully terrible music. Sorry bro, I wish I could watch it without any music. Couldn't watch it to the end.

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

    Thank you, I don't think I really understood adjacency lists until I watched this video.

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

    Amazing! Thank you!