diff --git a/README.md b/README.md index 7fc4f0f0b..106f5907e 100644 --- a/README.md +++ b/README.md @@ -18,7 +18,7 @@ Read our [Contribution Guidelines](CONTRIBUTING.md) before you contribute. ## Community Channel -We're on [Gitter](https://gitter.im/TheAlgorithms)! Please join us. +We're on [Gitter](https://gitter.im/TheAlgorithms)! Please join us. ## List of Algorithms diff --git a/data_structures/binary_tree/segment_tree_other.py b/data_structures/binary_tree/segment_tree_other.py index 93b603cdc..c3ab493d5 100644 --- a/data_structures/binary_tree/segment_tree_other.py +++ b/data_structures/binary_tree/segment_tree_other.py @@ -18,7 +18,7 @@ class SegmentTreeNode(object): self.right = right def __str__(self): - return 'val: %s, start: %s, end: %s' % (self.val, self.start, self.end) + return "val: %s, start: %s, end: %s" % (self.val, self.start, self.end) class SegmentTree(object): @@ -131,6 +131,7 @@ class SegmentTree(object): >>> """ + def __init__(self, collection: Sequence, function): self.collection = collection self.fn = function @@ -197,7 +198,10 @@ class SegmentTree(object): return self._query_range(node.left, i, j) else: # range in left child tree and right child tree - return self.fn(self._query_range(node.left, i, node.mid), self._query_range(node.right, node.mid + 1, j)) + return self.fn( + self._query_range(node.left, i, node.mid), + self._query_range(node.right, node.mid + 1, j), + ) else: # range in right child tree return self._query_range(node.right, i, j) @@ -217,10 +221,11 @@ class SegmentTree(object): queue.put(node.right) -if __name__ == '__main__': +if __name__ == "__main__": import operator + for fn in [operator.add, max, min]: - print('*' * 50) + print("*" * 50) arr = SegmentTree([2, 1, 5, 3, 4], fn) for node in arr.traverse(): print(node) diff --git a/data_structures/stacks/stack.py b/data_structures/stacks/stack.py index a96275aa8..baa0857ee 100644 --- a/data_structures/stacks/stack.py +++ b/data_structures/stacks/stack.py @@ -46,11 +46,11 @@ class Stack: def size(self): """ Return the size of the stack.""" return len(self.stack) - + def __contains__(self, item) -> bool: """Check if item is in stack""" return item in self.stack - + class StackOverflowError(BaseException): pass @@ -73,4 +73,3 @@ if __name__ == "__main__": num = 5 if num in stack: print(f"{num} is in stack") -