free web page hit counter
🛡️
Copyright Notice: This video is officially sourced and embedded from YouTube. For all copyright inquiries, reports, or removals, please contact YouTube's legal team here.
howCode

howCode

81,900 subscribers

👁 92,316 views

DEPTH FIRST SEARCH WITH PYTHON

Video Overview & Insights

In this video we'll be learning about trees, traversal, depth-first search (DFS) and how we can implement DFS easily using both recursion and iteration.

I'll add a new article to howcode.org tomorrow with some extra stuff I didn't have time to talk about in the video, it's a bit late for me at the moment! 🕑

— @howCode

Bonus! Using a stack and Python to find unbalanced parenthesis

https://howcode.org/t/using-a-stack-to-find-unbalanced-parenthesis/53

Nice video but you should have walked it's through the code for iterative method also

— @irish_coffeeee

Go to https://howcode.org for more!

Link to DigitalOcean: http://howco.de/d_ocean

I think every recursive-based algorithm should be explained like that, showing the call stack, the algorithm and an illustration, it gets easy to follow. Everyone should learn call stack and how it works on different ocasions while/before learning recursive algorithms. Excelent video and explanation btw, thanks!

— @gtrz2003

Link to howCode Facebook: http://howco.de/fb

Link to howCode Twitter: http://howco.de/twitter

No proper explanation of creating the nodes

— @rithannandakumar6163

Link to /r/howCode: http://howco.de/reddit

Don't forget to subscribe for more!

Great video man! I really feel you made everything less complicated!

— @hawulethu1

More User Perspectives

@

I have been looking for a easy to follow video on this for some time and finally I have found one. Thank you and keep up the good work!

@ploterman5
@

May be worth adding/mentioning a search term to your functions since these are searching algorithms. It may be obvious for some to just add an if-statement and return some value (i.e. boolean, Node), but definitely not all will know. Great video nonetheless!

@sweetphilly2
@

Please do python graphs and other data structures as well as algorithms

@AbhishekKumar-yt4mz
@

class Node:

def __init__(self,value,left = None ,right=None):

self.value= value

self.left = left

self.right = right

def __str__(self):

return "Node("+str(self.value)+")"



def walk(tree):

if tree is not None:

print(tree)

walk(tree.left)

walk(tree.right)



def walk2(tree,stack):

stack.append(tree)

while len(stack) > 0:

node = stack.pop()

if node is not None:

print(node)

stack.append(node.right)

stack.append(node.left)



mytree = Node('A', Node('B',Node('D'),Node('E')), Node('C',Node('F'),Node('G')))



walk(mytree)

@amjadattar86
@

Cleanest explanation I've found. Well done!

@dereksparks3764
@

Dude, I can't get over how easy it is to print the different orders by just moving the print statement. Thank you!

@JTNewby
@

Thank you for this! Best and simplest ive seen yet.

@thenidoking3378
@

Can I get access to the code?

@pIbrarBabar
@

actually the best explaintion ive seen after hours of searching for explanations - very informative and easy to follow

@EmceeEdits
@

Amazing explanation 😇

@robinfelix3879
@

Great explanation! Thank you.

@ashutoshlohogaonkar8348
@

Great video

@symbol767
@

Thank you! Very easy to understand for me!

@mariagu9967
@

I tried creating an empty list and pass it in the walk2 function but I got this error

TypeError: 'builtin_function_or_method' object is not subscriptable

any help?

my code
#the Stack
stack = []

#calling walk2 function
print("THE ITERATIVE WAY")
walk2(mytree,stack)

@codingwithmiles2732
@

Man, do more, someday I will learn English enough to watch all your videos !!! I will learn English for you and your fucking great content in the world. ahhhhhhhhhhhhhh.... <3

@WowMemMoments
@

Glad you have posted again Francis <3

@ItsIrishPlays
@

Welcome back! This is interesting.

@dimitar.bogdanov
@

What software you use for animation?

@gradientO
@

Depth first search? Nah, I prefer bread search first

I'm so tired

@misterwhopper556