PATTERN |
MATHS |
BIT MAGIC |
ARRAY |
|---|---|---|---|
STRING |
MATRIX |
SORTING |
SEARCHING |
HASHING |
STACK |
QUEUE |
LINKED LIST |
RECURSION |
BACKTRACKING |
TREE |
GRAPH |
GREEDY |
DIVIDE AND CONQURE |
DP |
| Qn | Solution | Qn | Solution |
|---|---|---|---|
| 1.PY | 1.PY | 18.PY | 18.PY |
| 2.PY | 2.PY | 19.PY | 19.PY |
| 3.PY | 3.PY | 20.PY | 20.PY |
| 4.PY | 4.PY | 21.PY | 21.PY |
| 5.PY | 5.PY | 22.PY | 22.PY |
| 6.PY | 6.PY | 23.PY | 23.PY |
| 7.PY | 7.PY | 24.PY | 24.PY |
| 8.PY | 8.PY | 25.PY | 25.PY |
| 9.PY | 9.PY | 26.PY | 26.PY |
| 10.PY | 10.PY | 27.PY | 27.PY |
| 11.PY | 11.PY | 28.PY | 28.PY |
| 12.PY | 12.PY | 29.PY | 29.PY |
| 13.PY | 13.PY | 30.PY | 30.PY |
| 14.PY | 14.PY | 31.PY | 31.PY |
| 15.PY | 15.PY | 32.PY | 32.PY |
| 16.PY | 16.PY | 33.PY | 33.PY |
| 17.PY | 17.PY | 34.PY | 34.PY |
| 35.PY | 35.PY | 36.PY | 36.PY |
| Problems | Solution |
|---|---|
| ABSOLUTE VALUE | ABSOLUTE_VAL.PY |
| ADDITION UNDER MODULE | ADDITION_UNDER_MOD.PY |
| CELCUISE TO FERENHITE | CELCUISE_TO_FERENHITE.PY |
| DIGIT COUNT PROBLEM | DIGIT_COUNT_PROBLEM.PY |
| DIGIT IN FACTORIAL | DIGIT_IN_FACTORIAL.PY |
| EXACTLY THREE DEVISOR | EXACTLY_3_DIVISIOR.PY |
| FIND FACOTRIAL | factorial.py |
| FIND FIBONACCI | fibonacci.py |
| FIND GP TURM | GP_TURM.PY |
| FIND LCM | LCM.PY |
| MOD MUL INVERSE | MOD_MULTIPLICATIVE_INVERSE.PY |
| PRIME NUMBER | PRIME.PY |
| Problems | Solution |
|---|---|
| ARRANGE ARRAY IN O(1) | ARRANGE_ARRAY_0(1).PY |
| ARRAY N ROTATION | ARRAY_N_ROTATION.PY |
| FIND EQUILIBRIAM POINT | FIND_EQUILIBRIAM.PY |
| FIND IMMIDIATE SMALLER | FIND_IMMIDIATE_SMALLER_X.PY |
| FIND TRANSITION POINT | FIND_TRANSITION_POINT.PY |
| FIND REPEATING ELEMENT | FIRST_REPEATING_ELE.PY |
| LEADER IN ARRAY | LEADER_IN_ARRAY.PY |
| MERGE WITHOUT EXTRA SPACE | Merge_Without_Extra_Space.py |
| REMOVE DUPLICATE | REMOVE_DUPLI.PY |
| REVERSE ARRAY IN GROUP | REVERSE_ARR_IN_GROUP.PY |
| SUBARRAY WITH GIVEN SUM | SUBARRAY_WITH_GIVEN_SUM.PY |
| TRAPPING RAIN WATER | TRAPPING_WATER.PY |
| WAVE ARRAY | WAVE_ARRAY.PY |
| KADANE 1D ARRAY | KADANE'S 1D_N.PY |
| KADANE 1D ARRAY | KADANE'S 1D_N2.PY |
| KADANE 1D ARRAY | KADANE'S 1D_N3.py |
| KADANE'S ALGORITHM FOR 2D ARRAY | KADANE'S.PY |
| WHO HAS A MAJORITY | WHO_HAS_MAJORITY.PY |
| DUPLICATE ZEROS | DUPLICATE_ZEROS.PY |
| DELETE ITEM FROM ARRAY | DELETE_ITEM_FROM_ARR.PY |
| NO OF GOOD PARIS | NO_OF_GOOD_PAIRS.PY |
| TWO NUM SUM | TWO_NUM_SUM.PY |
| SMALLEST DIFFERENCE | SMALLEST_DIFFERENCE.PY |
| MEJORITY ELEMENT N/2 PROBLEM | MAJORITY_ELEMENT.PY |
| LONGEST PEAK | LONGEST_PEAK.PY |
| SUM OF ALL ODD LENGTH SUBARRAY | Sum_of_All_Odd_Length_Subarrays.PY |
| Problems | Solution |
|---|---|
| ANAGRAM | ANAGRAM.PY |
| BINARY CHECK | BINARY_CHECK.PY |
| CONVERT TO ROMAN | CONVERT_ROMAN.PY |
| ISOMORPHIC | ISOMORPHIC.PY |
| KMP SOLUTION | KMP_SOLUTION.PY |
| LONGEST SUBSTRING WITHOUT REPEATING CHARACTER | LONGEST_SUBSTRING_WIHTOUT_REPE.PY |
| NAIVE SOLUTION | NAIVE_SOLUTION.PY |
| REVERSE WORD | REVERSE_WORD.py |
| SUM LARGE INT | SUM_LARGE_INT.PY |
| VALIDATE IP | VALIDATE_IP.PY |
| Problems | Solution |
|---|---|
| STACK | STACK.PY |
| STACK USING LINKED LIST | STACK_USING_LINKED_LIST.PY |
| MAXIMUM RECTANGULAR AREA IN HISTOGRAM | Maximum_Rectangular_Area_in_a_Histogram.py |
| NEXT GREATER ELEMENT | Next_Greater_Element.py |
| PARANTHESIS CHECKER | Parenthesis_Checker.py |
| REVERSE A STRING USING STACK | Reverse_a_string_using_Stack.py |
| REVERSE A STACK USING RECURSION | REVERSE_STACK.PY |
| EVALUATION OF POSTFIX EXPRESSION | Evaluation_of_Postfix_Expression.py |
| INFIX TO POSTFIX | INFIX_TO_POSTFIX.PY |
| REMOVE OUTERMOST PARANTHESIS | Remove_Outermost_Paranthesis.PY |
| DUPLICATE PARANTHESIS | DUPLICATE_PARA.PY |
| EASY STRING | EASY_STRING.PY |
| MIN STACK O(N) SPACE | MIN_STACK_1.PY |
| MIN STACK O(1) SPACE | MIN_STACK_2.PY |
| SLIDING WINDOW MAXIMUM | SLIDING_WINDOW_MAX.PY |
| STOCK SPAN PROBLEM | STOCK_SPAN.PY |
| Problems | Solution |
|---|---|
| QUEUE | QUEUE.PY |
| QUEUE WITH LINKED LIST | QUEUE_WITH_LINKED_LIST.PY |
| CIRCULAR QUEUE | CIRCULAR_QUEUE.PY |
| PRIORITY QUEUE | PRIORITY_QUEUE.PY |
| DOUBLE ENDED QUEUE | DOUBLE_ENDED_QUEUE.PY |
| SLIDING WINDOW MAXIMUM | SLIDING_WINDOW_MAX.PY |
| Problems | Solution |
|---|---|
| ADDITION OF TWO MATRIX | ADDITION_TWO_MAT.PY |
| BOOLEAN MATRIX | BOOLEAN_MATRIX.PY |
| DETERMINATION OF TWO MATRIX | DETERMINATION_TWO_MAT.PY |
| MATRIX MULTIPLICATION | matrix_mul.PY |
| MAXIMUM IN HISTOGRAM | MAX_IN_HISTOGRAM.PY |
| MAX SUM OF 1'S | MAX_SUM_1'S.PY |
| MULTIPLICATION OF TWO MATRIX | MUL_TWO_MAT.PY |
| ROTATE MATRIX 90 DEGREE | ROTATE_90_DEG.py |
| SEARCH IN MATRIX | SEARCH_IN_MATRIX.PY |
| SPIRAL TRAVERSAL IN MATRIX | SPIRAL_TRAVERSAL.PY |
| TRANSPOSE OF MATRIX | TRANSPOSE_MATRIX.PY |
| Problems | Solution |
|---|---|
| LINKED LIST | LINKED_LIST.PY |
| DOUBLY LINKED LIST | DOUBLY_LINKED_LIST.PY |
| CIRCULAR LINKED LIST | CIRCULAR_SINGLY_LINKED_LIST.PY |
| CIRCULAR DOUBLY LINKED LIST | CIRCULAR_DOUBLY_LINKED_LIST.PY |
| DELETE ALTERNATE NODE IN LINKED LIST | DELETE_ALTERNATE_NODE.PY |
| REVERSE A LINKED LIST | REVERSELINKEDLIST.PY |
| ROTATE A LINKED LIST IN K TIMES | ROTATE_A_LINKED_LIST.PY |
| REMOVE DUPLICATE FROM SORTED LINKED LIST | REMOVE_DUPLICATE_FROM_SORTED_LIST.PY |
| FIND THE SOME OF LAST N NODE OF LINKED LIST | FIND_THE _SUM_OF_LAST_N_NODED_OF_THE_LINKED_LIST.PY |
| VALIDATE PALINDROME LINKED LIST | PALINDROME_LINKED_LIST.PY |
| DETECT CYCLE IN LINKED LIST | LINKED_LIST_CYCLE.PY |
| PAIR SWAP | PAIR_SWAP.PY |
| MERGED TWO SORTED LINKED LIST | MERGED_TWO_SORTED_ARR.PY |
| Problems | Solution |
|---|---|
| FIND STRING LENGTH | STR_LEN.PY |
| DELETE X FROM STRING | STR_DEL_X.PY |
| REPLACE X WITH Y IN STRING | STR_REPLACE_X.PY |
| REMOVE CONSICUTIVE DUPLICATES | REMOVE_CONSICUTIVE_DUPLICATES.PY |
| SUM OF NATURAL NUMBERS | SUM_OF_N_NATURAL_NO.PY |
| FINDING EXPONENSIAL | EXPONENSIAL.PY |
| FIND NO OF WAYS IN MATRIX | FIND_NO_OF_WAYS_IN_NxM.PY |
| JOSEPHUS PROBLEM | JOSEPHUS_PROBLEM.PY |
| CHECKING PALINDROME STRING | PALINDROME_STRING.PY |
| PRINT ALL PERMUTATIONS OF STRING | PRINT_ALL_PERMUTATION_GIVEN_STRING.PY |
| PRINT SUBSEQUENCES OF STRING | PRINT_SUBSEQUENCE_OF_GIVEN_STRING.PY |
| REVERSE A STRING USING RECURSION | REVERSE_STRING.PY |
| SUBSETS OF TARGETSUM | SUBSETS_OF_TARGETSUM.PY |
| ALL POSSIBLE STAIR CASE | STAIR_CASE.PY |
| SPECIAL FIBONACCI | SPECIAL_FIBO.PY |
| FIND FIRST UPPERCASE | FIND_FIRST_UPPER.PY |
| GET MAXIMUM AND MINIMUM | GET_MAX_MIN.PY |
| SUM TRIANGULAR ARRAY | SUM_TRIA_ARR.PY |
| COMBINATION SUM | COMBINATIONS_SUM.PY |
| WORD SEARCH | WORD_SEARCH.PY |
| EXPLORE ALL POSSIBLE MAZE PATH | MAZE_FINDING.PY |
| EXPLORE ALL POSSIBLE MAZE PATH WITH JUMP | MAZE_FIND_WITH_JUMP.PY |
| KEYPAD COMBINATIONS | KEYPAD_COMBINATIONS.PY |
| Problems | Solution |
|---|---|
| AFTER COLLISION HASHING | ACO_HASH_FUNCTION.PY |
| BEFORE COLLISION HASHING | BCO_HASH_FUNCTION.PY |
| COUNT DISTINCT ELEMENT IN EVERY WINDOW | Count_distinct_elements_in_every_window.PY |
| INTERSECTION OF TWO SORTED ARRAY | INTERSECTION_OF_2_SORTED_ARR.PY |
| LONGEST CONSICUTIVE | LONGEST_CONSICUTIVE.PY |
| LONGEST SUBARRAY WITH ZERO SUM | LONGEST_SUBARR_0_SUM.PY |
| MAXIMUM DISTANCE BETWEEN SAME ELEMENT | MAX_DIS_BET_SAME_ELE.PY |
| NON REPEAT | NON_REPEAT.PY |
| SORTING ELEMENT OF AN ARRAY BY FREQUENCY | Sorting_Elements_of_an_Array_by_Frequency.PY |
| TOP K FREQUENT ELEMENT IN ARRAY | Top_k_Frequent_Elements_in_Array.PY |
| IS TWO ARRAY SAME OR NOT | TWO_ARR_SAME_OR_NOT.PY |
| TWO SUM | TWO_SUM.PY |
| Problems | Solution |
|---|---|
| BUBBLE SORT | bubble.PY |
| INSERTION SORT | insertion.PY |
| SELECTION SORT | selection.PY |
| SHELL SORT | shell.PY |
| QUICK SORT | quick.PY |
| MERGE SORT | merge.PY |
| REDIX SORT | redix.PY |
| BUCKET SORT | bucket.py |
| COUNTING SORT | count.PY |
| HEAP SORT | heap.PY |
| MINIMUM SWAP TO SORT A ARRAY | MINIMUM_SWAP_TO_SORT.PY |
| MINIMUM SWAP | MIN_SWAP.py |
| SORT 0 1 2 IN ARRAY | SORT_0_1_2.PY |
| UNION OR TWO SORTED ARRAY | UNION_2_SORTED_ARRAY.PY |
| Problems | Solution |
|---|---|
| LINEAR SEARCH | linear_search.PY |
| BINARY SEARCH | binary_search.PY |
| TERNARY SEARCH | TERNARY_SEARCH.PY |
| SEARCH SORTED ROTATED ARRAY | SEARCH_SORTED_ROTATE_ARRAY.PY |
| SEARCH MINIMUM PLATFORMS | SEARCH_Minimum_Platforms.PY |
| SEARCH PEAK ELEMENT | PEAK_ELEMENT.PY |
| SEARCH MISSING REPEATING VALUE | FIND_MISSING_REPEATING_NO.PY |
| SEARCH MEDIAN OF TWO SORTED ARRAY | MEDIAN_TWO_SORTED_ARR.py |
| Problems | Solution |
|---|---|
| TREE CREATION | TREE_CREATION.PY |
| GENERIC TREE CREATION | CONSTRUCTION_GENERIC_TREE.PY |
| GENERIC TREE CREATION 2.0 | CONSTRUCTION_GENERIC_TREE2_2.0.PY |
| DEPTHWISE GENERIC TREE TRAVERSAL | DEPTH_GENERIC_TREE_TRAVERSAL.PY |
| LEVELWISE GENERIC TREE TRAVERSAL | LEVEL_GENERIC_TREE_TRAVERSAL.PY |
| LEVEL LINEWISE GENERIC TREE TRAVERSAL | LEVEL_LINEWISE_TREE_TRAVERSAL.PY |
| ZIG ZAG LINEWISE GENERIC TREE TRAVERSAL | ZIG_ZAG_TRAVERSAL.PY |
| MIRROR OF GENERIC TREE | MIRROR_GENERIC_TREE.PY |
| MAXIMUM NODE FROM TREE | MAX_FROM_TREE.PY |
| LINEARIZE GENERIC TREE | LINEARIZE_GENERIC_TREE.PY |
| FIND ELEMENT IN GENERIC TREE | FIND_ELEMENT_IN_GENERIC_TREE.PY |
| REMOVE LEAF NODES IN GENERIC TREE | REM_LEAF_IN_GENERIC_TREE.PY |
| NODE TO ROOT PATH GENERIC TREE | NODE_TO_ROOT_PATH_GENERIC_TREE.PY |
| LOWEST COMMON ANCESTOR IN GENERIC TREE | LOWEST_COMMON_ANCESTOR_GENERIC.PY |
| DIFFERENCE BETWEEN TWO NODE IN GENERIC TREE | DIFFERENCE_BET_TWO_NODE_GENERIC.PY |
| CEIL AND FLOOR OF GIVEN VALUE IN GENERIC TREE | CEIL_AND_FLOOR.PY |
| GET DIAMETER IN GENERIC TREE | GET_DIAMETER_TREE.PY |
| GET SUCCESSOR-PREDESESSOR IN GENERIC TREE | GET_SUCCESSOR_PREDESESSOR.PY |
| IS SAME SHAPE WITH MIRROR TREE IN GENERIC TREE | IS_SAME_SHAPE_WITH_MIRROR.PY |
| IS SAME IN SHAPE IN GENERIC TREE | IS_SAME_SHAPE.PY |
| IS SYMETRIC IN GENERIC TREE | IS_SYMETRIC_TREE.PY |
| K TH LARGEST ELEMENT IN GENERIC TREE | K_TH_LARGEST_ELEMENT.PY |
| MAX SUBTREE SUM IN GENERIC TREE | MAX_SUBTREE_SUM.PY |
| BINARY TREE CREATION | BINARY_TREE_CREATION.PY |
| BINARY_TREE | BINARY_TREE.PY |
| BRANCH SUM BINARY TREE | BRANCH_SUM.PY |
| LEFT CLONE TREE BINARY TREE | LEFT_CLONE_TREE.PY |
| NODE TO ROOT PATH BINARY TREE | NODE_TO_ROOT_PATH.PY |
| PATH SUM BINARY TREE | PATH_SUM.PY |
| PRINT K LEVEL DOWN BINARY TREE | PRINT_K_LEVEL_DOWN.PY |
| REMOVE SINGLE CHILD BINARY TREE | REMOVE_SINGLE_CHILD.PY |
| AVL TREE | AVL_TREE.PY |
| Problems | Solution |
|---|---|
| GRAPH CREATION SET | GRAPH_CREATION_SET.PY |
| GRAPH CREATION LIST | GRAPH_CREATION_ADJ.PY |
| GRAPH CREATION MATRIX | GRAPH_CREATION_MAT.PY |
| DFS | DFS.PY |
| GET CONNECTED COMPONENTS | GET_CONNECTED_COMPO.PY |
| IS GRAPH CONNECTED | IS_GRAPH_CONNECTED.PY |
| GET NUMBER OF ISLANDS | COUNT_NO_OF_ISLAND.PY |
| PERFECT FRIENDS | PERFECT_FRIEND.PY |
| HAMILTON PATH | HAMILTON_PATH.PY |
| KNIGHT TOUR | KNIGHT_TOUR.PY |
| BFS | BFS.PY |
| SPREAD INFECTION PROBLEM | SPREAD_INFECTION.PY |
| IS GRAPH CYCLIC | IS_GRAPH_CYCLIC.PY |
| IS GRAPH BIPARTITE | IS_GRAPH_BIPARTITE.PY |
| DIJSTRA'S ALGORITHM | DIJSKRA'S.PY |
| KRUSKAL'S ALGORITHM | KRUSKAL'S.PY |
| PRIM'S ALGORITHM | PRIM'S.PY |
| FLOYD WARSHAL | floyd_warshal.PY |
| Problems | Solution |
|---|---|
| FINDING EXPONENTIAL | EXPONENTIAL.PY |
| LARGE NUMBER MULTIPLICAIOTN | LARGE_NUM_MUL.PY |
| MIN MAX PROBLEM | MIN_MAX_PROBLEM.PY |
| STRASSEN'S MATRIX MULTIPLICAOINT | Stressen's_Matrix_Mul .PY |
| Problems | Solution |
|---|---|
| BASIC OPERAIONS | BASIC.PY |
| BIT DIFFERENCE PROBLEM | BIT_DIFFERENCE.PY |
| BINARY TO GREY CODE EQUIVALENCE | Binary_To_Gray_Code_equivalent.PY |
| CHECK K BIT | CHECK_K_BIT.PY |
| FIND FIRST SET BIT | FIND_FIRST_SET_BIT.PY |
| IS POWER OF TWO | IS_POWER_2.PY |
| NUMBER IS SPARSE OR NOT | Number_is_sparse_or_not.PY |
| SWAPP ALL ODD AND EVEN BITS | Swap_all_odd_and_even_bits.py |
| COUNT TOTAL SET BITS | Count_total_set_bits.PY |
| MAXIMUM SUBSET XOR | Maximum_subset_XOR.PY |
| RIGHTMOST DIFFERENT BIT | Rightmost_different_bit.py |
| EQUAL SUM AND XOR | EQUAL_SUM_AND_XOR.PY |
| LONGEST CONSICUTIVE ONE'S | LONGEST_CONSECUTIVE_1'S.PY |
| MIDORI AND CHOCOLATE PROBLEM | MIDORI_AND_CHOCOLATE.py |
| NON REPEATING TWO DUPLICATE VALUES | NON_REPEATING_NUMBERS.PY |
| PARTY COUPLE PROBLEM (ONE DUPLICATE) | PARTY_OF_COUPLE.PY |
| Problems | Solution |
|---|---|
| 01 KNAPSACK PROBLEM | 01_knapsach_recursion.PY |
| FRACTIONAL KNAPSACK | FRACTIONAL_KNAPSACK.PY |
| CONNECTED COMPONENT PROBLEM | CONNECTED_COMPONENT.PY |
| DECODE STRING WAYS PROBLEM | DECODE_STRINGS_WAYS.PY |
| LONGEST COMMON SUBSEQUENCE | EDIT_DISTANCE_BET2STRING.PY |
| OPEN PARANTHESIS PROBLEM | LONG_COM_SUB.PY |
| PARTITION SET K SUM | OPNE_PARANTHESIS_PROBLME.PY |
| STAIR CASE PROBLEM | PARTITION_SET_K_SUM.PY |
| EDIT DISTANCE BETWEEN TWO STRINGS | STAIR_RECUR.py |
| Problems | Solution |
|---|---|
| FLOOD FILL ALGO | FLOOD_FILL.PY |
| TARGET SUBSET SUM | SUBSET_SUM_PROBLEM.PY |
| N QUEEN PROBLEM | N_QUEEN_DP.PY |
| KNIGHT TOUR | KNIGHT_TOUR.PY |
| SUDUKO SOLVER | SUDOKO.PY |
| TRAVELLING SALESMAN PROBLEM | Travelling_salesman_problem.PY |
| Problems | Solution |
|---|---|
| 01 KNAPSACK | 01_knapsack_dyna.PY |
| UNBOUNDED 01 KNAPSACK | UNBOUNDED_KNAPSACK.PY |
| ASSEMBLY LINE SHEDULAR | ASSEMBLY_LINE_SCHEDULAR.PY |
| BIONOMIAL | BIONOMIAL.PY |
| DECODE STRING WAYS DP APPROACH | DECODE_STRINGS_WAYS_DP.PY |
| EDIT DISTANCE BETWEEN TWO STRING DP APPROACH | EDIT_DISTANCE_BET2STRING_DP.PY |
| LONGEST COMMON SUBSEQUENCE DP APPROACH | LONG_COM_SUB_DP.PY |
| SUBSET SUM PROBLEM | SUBSET_SUM_PROBLEM.PY |
| MIN PATH SUM PROBLEM | MIN_PATH_SUM.PY |
| CLIMB STAIRS PROBLEM | CLIMB_STAIRS.PY |
| CLIMB STAIRS WITH JUMP | CLIMB_STAIRS_WITH_JUMP.PY |
| CLIMB STAIRS WITH MIN JUMP | CLIMB_STAIRS_WITH_MIN_JUMP.PY |
| MOST COST CLIMB STAIRS | MOST_COST_CLIMBING_STAIRS.PY |
| GOLDMINE DIG PROBLEM | GOLDMINE_DIG.PY |
| COIN CHANGE PERMUTATION | COIN_CHANGE_PERMUTATIONS.PY |
| COIN CHANGE COMBINATIONS | COIN_CHANGE_COMBINATIONS.PY |
| DECODE WAYS | DECODE_WAYS.PY |
| COUNT BINARY STRING | COUNT_BIN_STR.PY |
| ARRANGE THE BUILDING | ARRANGE_BUILDING.PY |
| COUNT SUBSEQUENCE OF A+B+C | COUNT_SUBSEQUENCE_ABC.PY |
| MAX SUM OF TWO NON ADJUCENT | SUM_OF_TWO_NON_ADJACENT.PY |
| PAINT HOUSE | PAINT_HOUSE.PY |
| PAINT HOUSE 2 | PAINT_HOUSE_2.PY |
| MATRIX SUM RECTANGLE | MATRIX_SUM_REC.PY |
| RANGE QUERY SUM PROBLEM | RANGE_QUERY.PY |
| STAIR CASE PROBLEM WITH DP APPROACH | STAIR_DP_BOTTOMUP.PY |
| TOTAL COUNT BINARY SEARCH TREE | TOTAL_COUNT_BST.PY |
| COIN CHANGE PROBLEM WITH DP APPROACH | choinchange.PY |
| EGG DROPPING WITH DP APPROACH | egg_droping.py |
| EGG DROPPING WITH DP APPROACH WITH SECOND APPROACH | egg_dropping_diff.PY |
| FIBONACCI SEQUENCE | fibonacci.PY |
| FIND NEXT PERMUTATION | next_permutation.PY |
| PASCAL TRIANGLE | pascal.PY |



















