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)
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
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!!'})
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)
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)
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)
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)
def test__pprint(): nodes = ['/', ['opt', 'framed', 'mcv']] t = tree(nodes) lines = [l for l in _pprint(t)] eq_(lines, ["- / {}", " - opt {}", " - framed {}", " - mcv {}"])
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)
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)
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, [])
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]])
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)
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)
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!!'})
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]])
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 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
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!!'})
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)
def test_get_present(): nodes = ['/', ['opt', 'framed', 'mcv']] t = tree(nodes) n = get(t, ['/', 'opt', 'framed']) assert value(n) == 'framed'
def test_get_absent(): nodes = ['/', ['opt', 'framed', 'mcv']] t = tree(nodes) assert get(t, ['/', 'opt', 'hello']) is None
def test_tree(): nodes = ['foo', 'bar', 'baz'] assert tree(nodes) == mknode('foo', [mknode('bar'), mknode('baz')])
def test_preorder(): nodes = ['/', ['opt', 'framed', 'mcv']] traversal = [value(n) for n in preorder(tree(nodes))] assert traversal == ['/', 'opt', 'framed', 'mcv']