Ejemplo n.º 1
0
    def get(self, request, user_id, format=None):
        snippet = self.get_object(user_id)

        tree = treant.tree(list(snippet.data))

        serializer = userviewSerializer(snippet)
        return Response(serializer.data)
Ejemplo n.º 2
0
def sorted_array_to_bst(nums):
    try:

            users = userdata.objects.get(id=user_id)
    except Exception as e:
            users=None
    if users:        
        array=  list(users.data)
        array=''.join(array)

        data=array.strip('][').split(', ') 
        print(data)
        data.sort(key=int)
        print(data)
        nums = data
        tree= treant.tree(data)
    
        
    if not nums:
        return None
    mid_val = len(nums)//2
    node = TreeNode(nums[mid_val])
    node.left = sorted_array_to_bst(nums[:mid_val])
    node.right = sorted_array_to_bst(nums[mid_val+1:])
    return node
Ejemplo n.º 3
0
def sorted(user_id):

    try:

        users = userdata.objects.get(id=user_id)
    except Exception as e:
        users = None
    if users:
        array = list(users.data)
        array = ''.join(array)

        data = array.strip('][').split(', ')
        print(data)
        data.sort(key=int)
        nums = data
        print(type(nums))
        tree = treant.tree(data)
        n = len(nums)
        level = 0
        i = 0
        while (i < n):
            cnt = int(pow(2, level))
            cnt -= 1
            j = min(i + cnt, n - 1)
            nums = nums[:i] + sorted(nums[i:j + 1]) + nums[j + 1:]
            while (i <= j):
                print(nums[i], end=" ")
                i += 1
            print()
            level += 1

    else:
        return Response({'msg': 'user not found!!'})
Ejemplo n.º 4
0
    def get(self, request, user_id):
        try:

            users = userdata.objects.get(id=user_id)
        except Exception as e:
            users = None
        if users:
            array = list(users.data)
            array = ''.join(array)

            data = array.strip('][').split(', ')
            print(data)
            data.sort(key=int)
            nums = data
            tree = treant.tree(data)
        else:
            return Response({'msg': 'user not found!!'})

        def sorted_array_to_bst(nums):

            if not nums:
                return None
            mid_val = len(nums) // 2
            node = TreeNode(nums[mid_val])
            node.left = sorted_array_to_bst(nums[:mid_val])
            node.right = sorted_array_to_bst(nums[mid_val + 1:])
            return node

        def preOrder(node):
            if not node:
                return
            print(node.val)
            preOrder(node.left)
            preOrder(node.right)
Ejemplo n.º 5
0
 def get(self, request, user_id):
     users = userdata.objects.get(id=user_id)
     array = list(users.data)
     array = ''.join(array)
     print(array)
     tree = treant.tree(list(array))
     print(tree)
     return Response(tree)
Ejemplo n.º 6
0
    def get(self, request, user_id, format=None):
        snippet = self.get_object(user_id)
        data = list(snippet.data)
        am = data.remove(',')
        print(am)
        tree = treant.tree(list(snippet.data))

        serializer = userviewSerializer(snippet)
        return Response(serializer.data)
Ejemplo n.º 7
0
 def get(self, request, user_id):
     users = userdata.objects.get(id=user_id)
     array = list(users.data)
     array = ''.join(array)
     print(type(array))
     data = array.strip('][').split(', ')
     tree = treant.tree(data)
     print(tree)
     return Response(tree)
Ejemplo n.º 8
0
def test__pprint():
    nodes = ['/', ['opt', 'framed', 'mcv']]
    t = tree(nodes)
    lines = [l for l in _pprint(t)]

    eq_(lines,
        ["- / {}",
         "  - opt {}",
         "    - framed {}",
         "    - mcv {}"])
Ejemplo n.º 9
0
    def post(self, request, format=None):

        serializer = userviewSerializer(data=request.data)
        print(serializer)
        if serializer.is_valid():
            serializer.save()
            print(treant.tree(serializer.data))

            return Response(serializer.data)
        return Response(serializer.errors)
Ejemplo n.º 10
0
def tree(node):
    """Construct a tree from nodes; use the treant 'smart' node
    constructor with flexible tuple interpretation:

    (value)
    (value, <[list-is-children]>)
    (value, <{dict-is-attributes}>)
    (value, <[list-is-children]>, <{dict-is-attributes}>)
    (value, <{dict-is-attributes}>, <[list-is-children]>)
    """
    return treant.tree(node, node_constructor=treant.n)
Ejemplo n.º 11
0
def test_find_all_miss():
    nodes = ('/', [
                ('opt', [
                    ('framed', [
                        ('bin')]),
                    ('mcv', [
                        ('bin')])])])
    t = tree(nodes)
    root, opt, framed, framed_bin, mcv, mcv_bin = preorder(t)
    ns = [n for n in find_all(t, lambda n: value(n) == 'nonsense!')]

    eq_(ns, [])
Ejemplo n.º 12
0
def test_find_all_paths_hit_nonleaf():
    nodes = ('/', [
                ('opt', [
                    ('framed', [
                        ('bin')]),
                    ('mcv', [
                        ('bin')])])])
    t = tree(nodes)
    root, opt, framed, framed_bin, mcv, mcv_bin = preorder(t)
    ps = [p for p in find_all_paths(t, lambda n: value(n) == 'framed')]

    eq_(ps, [[root, opt, framed]])
Ejemplo n.º 13
0
def test_find_ex_hit_nonleaf():
    nodes = ('/', [
                ('opt', [
                    ('framed', [
                        ('bin')]),
                    ('mcv', [
                        ('bin'),
                        ('tests')])])])
    t = tree(nodes)
    root, opt, framed, framed_bin, mcv, mcv_bin, mcv_tests = preorder(t)
    n = find_ex(t, lambda n: value(n) == 'mcv')

    eq_(n, mcv)
Ejemplo n.º 14
0
def test_find_path_ex_miss_nonunique():
    nodes = ('/', [
                ('opt', [
                    ('framed', [
                        ('bin')]),
                    ('mcv', [
                        ('bin'),
                        ('tests')])])])
    t = tree(nodes)
    root, opt, framed, framed_bin, mcv, mcv_bin, mcv_tests = preorder(t)
    n = find_path_ex(t, lambda n: value(n) == 'bin')

    eq_(n, None)
Ejemplo n.º 15
0
    def get(self, request, user_id):
        if users:

            users = userdata.objects.get(id=user_id)
            array = list(users.data)
            array = ''.join(array)

            data = array.strip('][').split(', ')
            tree = treant.tree(data)

            return Response(tree)
        else:
            return ({'msg': 'user not found!!'})
Ejemplo n.º 16
0
def test_paths_preorder():
    nodes = ['/', ['opt', 'framed', 'mcv']]

    t = tree(nodes)
    root = get(t, ['/'])
    opt = get(t, ['/', 'opt'])
    framed = get(t, ['/', 'opt', 'framed'])
    mcv = get(t, ['/', 'opt', 'mcv'])

    paths = [p for p in paths_preorder(t)]

    eq_(paths,
        [[root],
         [root, opt],
         [root, opt, framed],
         [root, opt, mcv]])
Ejemplo n.º 17
0
    def get(self, request, user_id):
        try:

            users = userdata.objects.get(id=user_id)
        except Exception as e:
            users = None
        if users:
            array = list(users.data)
            array = ''.join(array)

            data = array.strip('][').split(', ')
            print(data)
            data.sort(key=int)
            nums = data
            tree = treant.tree(data)
        else:
            return Response({'msg': 'user not found!!'})
Ejemplo n.º 18
0
def value(user_id):
    try:

        users = userdata.objects.get(id=user_id)
    except Exception as e:
        users = None
    if users:
        array = list(users.data)
        array = ''.join(array)

        data = array.strip('][').split(', ')
        print(data)
        data.sort(key=int)
        print(data)
        nums = data
        tree = treant.tree(data)
        return data
Ejemplo n.º 19
0
def sorted(user_id):

    try:

        users = userdata.objects.get(id=user_id)
    except Exception as e:
        users = None
    if users:
        array = list(users.data)
        array = ''.join(array)

        data = array.strip('][').split(', ')
        print(data)
        data.sort(key=int)
        arr = data
        print(arr)
        print(type(arr))
        tree = treant.tree(data)
        n = len(arr)
        return data
    else:
        return Response({'msg': 'user not found!!'})
Ejemplo n.º 20
0
 def get(self, request, user_id):
     users = userdata.objects.get(id=user_id)
     array = users.data
     tree = treant.tree(array)
     print(tree)
     return Response(tree)
Ejemplo n.º 21
0
def test_get_present():
    nodes = ['/', ['opt', 'framed', 'mcv']]
    t = tree(nodes)
    n = get(t, ['/', 'opt', 'framed'])
    assert value(n) == 'framed'
Ejemplo n.º 22
0
def test_get_absent():
    nodes = ['/', ['opt', 'framed', 'mcv']]
    t = tree(nodes)
    assert get(t, ['/', 'opt', 'hello']) is None
Ejemplo n.º 23
0
def test_tree():
    nodes = ['foo', 'bar', 'baz']
    assert tree(nodes) == mknode('foo', [mknode('bar'), mknode('baz')])
Ejemplo n.º 24
0
def test_preorder():
    nodes = ['/', ['opt', 'framed', 'mcv']]
    traversal = [value(n) for n in preorder(tree(nodes))]
    assert traversal == ['/', 'opt', 'framed', 'mcv']