Programming/Algorithm

    Bit Manipulation

    1. What is Bit Manipulation Bit Manipulation is the acto of algorithmically manipulating bits or other pieces of data shorter than a word. Computer programming task that require bit manipulation include low-level device control, error detection and correction algorithms, data compression, encryption algorithms, and optimization. For most other task, modern programming languages allow the program..

    DFS

    DFS

    1. Definition Depth-first Search(DFS) is an algorithm for traversing or searching tree or graph data structures. The algorithms starts at the root node (selecting some arbitarary node as the root nodes in the case of the graph) and explores as far as possible along each branch before backtracking. 2. Properties The time and space analysis of DFS differs according to its application area. In theo..

    Tree Traversal

    Tree Traversal

    1. What is Binary Search Tree In computer science, a binary search tree (BST), also called an ordered or sorted binary tree, is a rooted binary tree data structure with the key of each internal node being greater than all the keys in the respective node's left subtree and less than ones in its right subtree. The time complexity of operations on the binary search is directly proportional to the h..

    Dynamic Programming

    1. What is Dynamic Programming? Dynamic Programming is a technique in computer programming that helps to efficiently solve a class of problems that have overlapping subproblems and optimal substructure property. If any problem can be divided into subproblems, which in turn are divided into smaller subproblems, and if there are overlapping among these subproblems, then the solutions to these subp..