I have a list of orders:
id, dependency_id
1, 2
1, 3
3, 4
5, 2
3, 6
I have to output something like this:
Id: 1, Name: Order 1
Dependencies
Id: 2, Name: Order 2
Id: 3, Name: Order 3
Dependencies
Id: 4, Name: Order 4
Id: 6, Name: Order 6
Id: 5, Name: Order 5
Dependencies
Id: 2, Name: Order 2
What sort of recursive algorithm should I use? I am stuck
This is what I have so far:
dependencies = {}
def read():
f = open("dependencies.txt", "r")
# contents = f.read() #reads the whole file
#print(contents) #prints everything
#print(contents[0]) #prints first letter
lines = f.readlines()
for i in range(1, len(lines)):
dep = lines[i].split(",")
dep[1] = dep[1].rstrip()
try:
depList = dependencies.get(dep[0], [])
depList.append(dep[1])
dependencies[dep[0]] = depList
except:
dependencies[dep[0]] = [dep[1]]
if __name__ == "__main__":
read()
This returns: {'1': ['2', '3'], '3': ['4', '6'], '5': ['2']}