Esempio n. 1
0
def inordersearch(lroot, mroot):
    arr = []
    if lroot:
        arr = arr + inordersearch(lroot.left, mroot)
        if lroot.val != None and Node.search(
                mroot, lroot.val) != None and Node.search(mroot,
                                                          lroot.val) != mroot:
            arr.append(lroot.val)
        arr = arr + inordersearch(lroot.right, mroot)
    return arr
Esempio n. 2
0
def getFreeHoursInCommon1(a, b):
    result = [[] for i in range(period)]
    leader = [Node.inorderarr(a[x], [])
              for x in range(period)]  #without time in common
    #leader = [[12, 13, 13.5], [10, 13.5, 15], [13.5, 15], [13.5, 14], [11, 13.5], [13.5], [13.5]] #with time in common
    #print(leader)
    for i in range(len(leader)):
        for j in range(len(leader[i])):
            if Node.search(b[i], leader[i][j]) != None and Node.search(
                    b[i], leader[i][j]) != b[i]:
                result[i].append(leader[i][j])
    return result