DSA module
- class DSA.BSTNode(info: int)[source]
Bases:
object
BST Node class.Available member functions include:initialising constructorstring converter
- class DSA.BinarySearchTree[source]
Bases:
object
Binary Search Tree class.Available member functions include:initialising constructorinserttraverseheight- __init__() None [source]
- Construct a new Binary Search Tree object
>>> from DSA import BinarySearchTree >>> t = BinarySearchTree() >>> type(t) <class 'DSA.BinarySearchTree'>
- height(root: BSTNode) int [source]
- Calculates height of the treeArgs:root: node to calculate height for
>>> from DSA import BinarySearchTree >>> t = BinarySearchTree() >>> t.insert(3) >>> t.insert(1) >>> t.insert(6) >>> t.insert(4) >>> t.insert(5) >>> t.height(t.root) 3
- class DSA.DoublyLinkedList[source]
Bases:
object
Doubly Linked List class.Available member functions include:initialising constructorinsertprinterreverse- __init__() None [source]
- Construct a new Singly Linked List Node object
>>> from DSA import DoublyLinkedList >>> l = DoublyLinkedList() >>> type(l) <class 'DSA.DoublyLinkedList'>
- insert(data: int) None [source]
- Insert node into the listArgs:data: input value for the node
>>> from DSA import DoublyLinkedList >>> l = DoublyLinkedList() >>> l.insert(1) >>> l.insert(2) >>> l.insert(3) >>> l.printer() [1, 2, 3]
- class DSA.DoublyLinkedListNode(data: int)[source]
Bases:
object
Doubly Linked List Node class.Available member functions include:initialising constructorstring converter
- class DSA.SinglyLinkedList[source]
Bases:
object
Singly Linked List class.Available member functions include:initialising constructorinsertfinddeleteValprinterreverse- __init__() None [source]
- Construct a new Singly Linked List Node object
>>> from DSA import SinglyLinkedList >>> l = SinglyLinkedList() >>> type(l) <class 'DSA.SinglyLinkedList'>
- deleteVal(data: int) bool [source]
- Delete value in the listArgs:data: value to be deletedReturn:bool: True/False
>>> from DSA import SinglyLinkedList >>> l = SinglyLinkedList() >>> l.insert(1) >>> l.insert(2) >>> l.insert(4) >>> l.insert(3) >>> print(l.deleteVal(2)) True
- find(data: int) SinglyLinkedListNode [source]
- Find value in the listArgs:data: value to be foundReturn:SinglyLinkedListNode: node if foundNone: if not found
>>> from DSA import SinglyLinkedList >>> l = SinglyLinkedList() >>> l.insert(1) >>> l.insert(2) >>> l.insert(4) >>> l.insert(3) >>> print(l.find(4)) 2
- insert(data: int) None [source]
- Insert node into the listArgs:data: input value for the node
>>> from DSA import SinglyLinkedList >>> l = SinglyLinkedList() >>> l.insert(1) >>> l.insert(2) >>> l.insert(3) >>> l.printer() [1, 2, 3]
- class DSA.SinglyLinkedListNode(data: int)[source]
Bases:
object
Singly Linked List Node class.Available member functions include:initialising constructorstring converter
- class DSA.Trie[source]
Bases:
object
Trie class.Available member functions include:initialising constructorfindinsertcheckPrefixcountPrefix- __init__() None [source]
- Construct a new Trie object
>>> from DSA import Trie >>> t = Trie() >>> type(t) <class 'DSA.Trie'>
- checkPrefix(s: str) bool [source]
- Check if string is a prefixArgs:s: string to checkReturn:bool: True/False
>>> from DSA import Trie >>> t = Trie() >>> t.insert('abcd') >>> t.insert('ace') >>> t.insert('about') >>> t.checkPrefix('ab') True
- countPrefix(s: str) int [source]
- Count strings who have some prefixArgs:s: string to check prefix
>>> from DSA import Trie >>> t = Trie() >>> t.insert('abcd') >>> t.insert('ace') >>> t.insert('about') >>> t.countPrefix('ab') 2
- DSA.merge(list1: SinglyLinkedList, list2: SinglyLinkedList) SinglyLinkedList [source]
- Merge two sorted linked listsArgs:list1: first listlist2: second listReturn:SinglyLinkedList: merged list
>>> from DSA import SinglyLinkedList, merge >>> L1 = SinglyLinkedList() >>> L1.insert(2) >>> L1.insert(4) >>> L1.insert(7) >>> L2 = SinglyLinkedList() >>> L2.insert(1) >>> L2.insert(4) >>> L2.insert(5) >>> merge(L1,L2).printer() [1, 2, 4, 4, 5, 7]