implement recursice function

This commit is contained in:
vincent 2022-11-15 19:03:29 +01:00
parent b5a390bce3
commit ed8118ae08

View File

@ -1,6 +1,6 @@
# Charger les bibliothèques DesignScript et Standard Python
import sys
import clr
# import clr
import re
# clr.AddReference('ProtoGeometry')
@ -9,16 +9,19 @@ import re
Keylist = [
"RSV12",
"RSV13",
"RSV16",
"RSV19",
"RSV20,RSV21,RSV1",
"rsv12",
"rsv13",
"rsv16",
"rsv19",
"rsv20",
"rsv21",
"rsv1",
] # dataEnteringNode[0]
CollittionList = [
["rsv13"],
["rsv12", "rsv16"],
["rsv20", "rsv21", "rsv1"],
["rsv13"],
["rsv20","rsv21","rsv1"],
["rsv19", "rsv1"],
["rsv19"],
["rsv19", "rsv20"],
@ -26,3 +29,24 @@ CollittionList = [
OUT = []
def find_in_out(rsv, out):
for arr in OUT:
if rsv in arr:
return True
def recurCollition(index, OUTindex):
for i in CollittionList[index]:
if not find_in_out(i, OUT):
OUT[OUTindex].append(i)
recurCollition(Keylist.index(i), OUTindex)
for i in range(len(Keylist)):
if find_in_out(Keylist[i], OUT):
continue
OUT.append([Keylist[i]])
recurCollition(i, len(OUT) - 1)
print(OUT)