Skip to content

About

All the practice programs will be here

Resources

Stars

0 stars

Watchers

1 watching

Forks

Latest commit

 

History

55 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Mastering-Data-Structures-and-Algorithms-by-Abdul-Bari

All the practice programs will be here

This is a self learning....

Also here I've written only codes for those I don't know.

Every Topic in this :

1. Intro

2. C and C++ Concepts

3. Setting Up

4. Introduction about data structures

5. Recursion

i. Head Recursion

ii. Tail Recursion

iii. Tree Recursion

iv. Indirect Recursion

v. Nested Recursion

Programs :

    Sum of first 'n' Natural numbers

    Factorial of a number

    Power or Exponent

    Taylor Series

    Taylor Series using Horner's rule

    Fibonacci Series - Recursive, Iterative and Memoization

    Combination Formula

    Tower Of Hanoi

6. Array Representations

i. Increase size of array

ii. 2D Array

7. Array ADT

Operations :

i.   Display()

ii.  Add(x)/Append(x)

iii. Insert(index,x)

iv.  Delete(index)

v.   Search(x)

        Linear Search(including Transposition and Move to Front/Head)

        Binary Search

vi.  Get(index)

vii. Set(index,x)

viii. Max()

ix.  Min()

x. Sum()

xi. Avg()

xii. Reverse() (in 2 ways)

xiii. Inserting in a Sorted Array

xiv. isSorted()

xv.  Rearrangement() (brings -ve elements to left side and +ve to right)

xvi. Merge two arrays

xvii. Set Operations

        a. Union

        b. Intersection

        c. Difference

Finally, Menu Driven Array ADT in java (My Preferred Language)

*Student Challenge :*

    Finding Single Missing Element

    Finding Multiple Missing Element

    Finding Missing Elements

    Finding Duplicates in Sorted Array

    Finding Duplicates in Unsorted Array

    Finding a Pair with sum 'k'

    Finding a Pair with sum 'k' in sorted array

    Finding Max and Min in Single Scan

8. Strings

Length of string

Changing Case

Counting of vowels and consonants

Duplicates in string

Reverse

Validation

Comparing and checking if palindrome

Anagram checking

9. Matrices

i. Diagonal Matrices

ii. Lower Triangular Matrices

iii. Upper Triangular Matrices

iv. Symmetric Matrices

v. Tridiagonal Matrices

vi. Square band Matrix

vii. Topelitz Matrix

10.0. Sparse Matrix and Polynomial Representation

i. Creation of Sparse Matrix (Coordinate List / 3 - column Representation)

ii. Addition of Sparse Matrices

10.5. Polynomial Representation

i. Polynomial Representation

ii. Addition of polynomials

11. Linked List

i. Displaying Linked List recusrive also...

ii. Counting Nodes in LL

iii. Sum of all elements in LL

iv. Maximum elements in LL

v. Searching in LL (Linear Search, Also using Transposition)

vi. Inserting in LL

vii. Deleting from LL

viii. Check if LL is sorted

ix. Remove duplicates

x. Reversing a LL

xi. Concatenating LL

xii. Merge LL

xiii. Check for loop in LL

xiv. Circular LL

xv. Doubly LL

xvi. Circular Doubly LL

12.0. Sparse Matrix using LL

i. Creating Sparse Matrix

ii. Displaying

iii. Adding Sparse Matrices

12.5. Polynomial Representation using LL

i. Creating Polynomial

ii. Displaying Polynomial

iii. Adding Polynomials

13. Stack

i. Stack Using Array

ii. Stack Using Linked List

iii. Paranthesis Matching Using Stack

iv. Infix to Postfix Conversion

v. Evaluation of Postfix Expression

14. Queues

i. Queue Using Array

ii. Circular Queue

iii. Queue Using Linked List

iv. Queue Using 2 Stacks

15. Trees

i. Creating Binary Tree (Using Queue)

ii. Preorder, Inorder, Postorder, Levelorder Traversal

iii. Height of tree

iv. Iterative Preorder, Inorder, Postorder Traversal

v. Counting Number of nodes in Binary Tree

16. Binary Search Trees

i. Inserting in BST (Iterative & Recursive)

ii. Deleting in BST

iii. Searching in BST

iv. Generating BST from Preorder Traversal

17. AVL Trees

i. Inserting in AVL Trees with all 4 types of Rotations

18. Search Trees (No Programs)

i. 2-3 Trees

ii. 2-3-4 Trees

iii. Red-Black Trees

19. Sorting Techniques

i. Bubble Sort

ii. Insertion Sort

iii. Selection Sort

iv. Quick Sort

v. Merge Sort (Iterative & Recursive)

vi. Count Sort

vii. Bin/Bucket Sort

viii. Radix Sort

ix. Shell Sort

About

All the practice programs will be here

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages