Hi đź‘‹ this repository contains DSA problems solved by me in C++ programming language.
- reverse_array.cpp
- MinMax.cpp
- ksmall_min_heap.cpp
- move_negetive.cpp
- mini_heights.cpp
- min_jump.cpp
- merge_sorted.cpp
- merge_intervals.cpp
- rearrang_withOn.cpp
- max_subarray.cpp
- max_profit_twice_st.cpp
- count_inv.cpp
- find_duplicate_in_array_of_n+1.cpp
- merge_2_sorted_using_gapMethod.cpp
- maximum_intervals_overlap.cpp
- next_perm.cpp
- count_pairs_sum.cpp
- zero_sum_subarray.cpp
- factorial_of_large_numbers.cpp
- maximum_product_subarray.cpp
- triplet_sum_in_array.cpp
- three_way_partition.cpp
- minimum_swaps_and_k_together.cpp
- make_palindromic_with_minium_operations.cpp
- product_except_self.cpp
- bishu_and_soldiers_hackerearth.cpp
- binary_search.cpp
- bubble_sort.cpp
- selection_sort.cpp
- merge_sort.cpp
- quick_sort.cpp
- count_sort.cpp
- insertion_sort.cpp
- max_occuring_element.cpp
- DNF_sort.cpp
- missing_and_repeating.cpp
- merge_2_sorted_array_gap_method.cpp
- bishu_and_soldiers_hackerearth.cpp
- kth_smallest_number_again.cpp
- kth_element_of_two_sorted_arrays.cpp
- aggressive_cows.cpp
- eko_spoj.cpp
- reverse_string.cpp
- isPalindrome.cpp
- print_all_subsequences.cpp
- split_binary_strings_with_equal_no_of_0s_and_1s.cpp
- next_permutation.cpp
- rabin_karp_algorithm.cpp
- recursively_print_all_sentences.cpp
- convert_roman_numerals_to_decimal.cpp
- isomorphic_strings.cpp
- longest_prefix_suffix.cpp
- kmp_algorithm.cpp
- count_the_reversals.cpp
- find_string_in_a_grid.cpp
- min_number_of_flips.cpp
- longest_common_prefix.cpp
- min_swaps_to_balance.cpp
- second_most_repeated_string.cpp
- generate_all_ip_address.cpp
- group_anagrams.cpp
- minimum_window_substring.cpp
- rearrange_such_that_adjacent_are_not_same.cpp
- another_string_minimum_window_substring.cpp
- wildcard_matching.cpp
- no_of_customer_with_no_computer.cpp
- Print all subsequences
- Keypad Combinations
- Recursively remove all adjacent duplicates
- Print factorial of n
- Print Greatest Common divisor(GCD) of 2 numbers
- N Queens
- Rat in a maze
- Word Break Problem
- Remove Invalid Parantheses
- Sudoku Solver
- M colouring Problem
- Shortest safe route in path with landmines
- A Knight's tour
- Combination Sum
- Print all palindromic partitions
- Print all permutations
- nth lexographical permutation
- nth lexographical permutation in strings
- Partition into K subsets with equal sum
- Print all possible paths in matrix from top-left to bottom-right
- Length of longest possible route in matrix
- Find largest number by doing atmost k swaps
- Word Search
- Tug of war
- Singly Linked List implementation
- Doubly Linked list implementation
- Reverse singly linked list
- Reverse k nodes in linked list
- Reverse k nodes in doubly linked list
- Check if a linked list is palindromic or not
- Circular linked list implementation
- delete operations in circular linked list
- delete operations in doubly linked list
- Add 1 to a number in the form of linked_list
- Delete duplicates in both (sorted and unsorted) linked list
- flatten a linked list
- Remove a given value in circular linked list
- Detect loop in a linked list
- Remove loop in circular linked list
- Find intersection of 2 sorted linked list
- Find intersection of 2 unsorted linked list
- Merge sort on linked list
- Reorder linked list
- Find pair with given sum in doubly linked list
- Rotate a doubly linked list
- split circular linked list in 2 halves
- stack_linked.cpp
- que_arr.cpp
- que_linked.cpp
- stack_arr.cpp
- balanced_paranth.cpp
- two_stack.cpp
- reverse_string.cpp
- next_greatest.cpp
- strev_recur.cpp
- eval_posfix.cpp
- celebrity.cpp
- sortst_rec.cpp
- mergeint_st.cpp
- area_histogram.cpp
- longest_valid.cpp
- redundant_bracket.cpp
- stack_usingque.cpp
- next_smallest.cpp
- que_usingStack.cpp
- kstacks.cpp
- getmin.cpp
- circularQueue.cpp
- kqueues.cpp
- reverse_kqu.cpp
- interleave.cpp
- circularTour.cpp
- first_neg.cpp
- sum_minmax.cpp
- first_nonRepeating.cpp
- max_of_subaarray.cpp
- decode_string.cpp
- implement.cpp
- reverse_levelOrder.cpp
- diamter.cpp
- dfs.cpp
- left_view.cpp
- right_view.cpp
- topview.cpp
- bottomView.cpp
- zig_zagSpiral.cpp
- check_balanced.cpp
- diagonal_traversal.cpp
- boundary_traversal.cpp
- build_brackets.cpp
- convert_toDLL.cpp
- convertToSumtree.cpp
- isSumTree.cpp
- build_from_inorder_preorder.cpp
- min_swaps_bst.cpp
- check_levelleaf.cpp
- sumofLongRootToLeafPath.cpp
- largest_subtree_sum.cpp
- lowest_common_ancestor.cpp
- distanceBetweenNodes.cpp
- kth_ancestor.cpp
- duplicate_subtree.cpp
- max_sum_nonAdjacent.cpp
- isomorphous.cpp
- build_tree.cpp
- vertical_order.cpp
- search_and_insertion.cpp
- deletion.cpp
- findMinMax.cpp
- inorder_pred_suc.cpp
- inorder_predSuc_iterative.cpp.cpp
- inorder_predSuc_iterative.cpp
- isBST.cpp
- populate_inorder_successor.cpp
- LCAinBST.cpp
- BST_from_preorder.cpp
- binaryTree_to_BST.cpp
- balance_BST.cpp
- kthLargestinBST.cpp
- threaded_binary_tree.cpp
- Morris_traversal.cpp
- kth_SmallestUsingMorris.cpp
- Brother_from_different_roots.cpp
- findMedian_bst.cpp
- countNodes_in_range.cpp
- replace_with_leastGreaterOnRight.cpp
- Dead_End.cpp
- valid_preorder_for_BST.cpp
- merge_2_bst.cpp
- Largest_bst.cpp
- flatten_bst_sorted_list.cpp
- max_heap.cpp
- heap_sort.cpp
- sort_characters_by_freq.cpp
- kthSmallest.cpp
- kthsmallest_using_Quickselect.cpp
- merge_k_sorted_arrays.cpp
- reorganize_string.cpp
- kth_largest_sum_subarray.cpp
- merge_k_sorted_lists.cpp
- smallest_range_k_lists.cpp
- min_cost_of_ropes.cpp
- minimum_sum.cpp
- sliding_window_max.cpp
- isBinaryTree_maxheap.cpp
- convert_bst_to_minheap.cpp
- nearly_sorted_algorithm.cpp
- median_in_stream.cpp
- breadth_first_search.cpp
- depth_first_search.cpp
- detect_cycle_in_undirected_graph.cpp
- detect_cycle_in_directed_graph_using_dfs.cpp
- topological_sort_DFS.cpp
- kahn_algorithm_topoSort.cpp
- detect_cycle_in_directed_graph_using_kahn_algorithm.cpp
- find_number_of_islands.cpp
- rat_in_a_maze.cpp
- steps_by_knight.cpp
- shortest_path_in_unweighted_graph.cpp
- flood_fill.cpp
- clone_a_graph.cpp
- min_operations_to_connect_network.cpp
- is_Bipartite.cpp
- prerequisite_tasks.cpp
- prims_algorithm.cpp
- disjoint_sets.cpp
- kruskals_algorithm.cpp
- dijkstra_algorithm.cpp
- alien_dictionary.cpp
- word_ladder.cpp
- bellman_ford_algorithm.cpp
- detect_negetive_cycle.cpp
- floyd_warshall_algorithm.cpp
- snakes_and_ladders.cpp
- hamiltonian_path.cpp
- hamiltonian_cycle.cpp
- shortest_path_in_weighted_directed_acyclic_graph.cpp
- check__whether_an_edge_is_bridge.cpp
- find_all_bridges.cpp
- find_articulation_points.cpp
- kosaraju_algorithm.cpp
- journey_to_the_moon.cpp
- oliver_and_the_game.cpp
- path_greater_than_k_length.cpp
- m-coloring.cpp
- insert_and_search.cpp
- delete_in_trie.cpp
- shortest_unique_prefix_of_each_word.cpp
- word_break_using_trie.cpp
- Groupanagram_using_trie.cpp
- phone_directory.cpp
- unique_row_in_binary_matrix.cpp
- activity_selection.cpp
- job_sequencing.cpp
- fractional_knapsack.cpp
- choose_and_swap.cpp
- huffman_coding.cpp
- maximum_trains_for_stoppage.cpp
- minimum_platforms.cpp
- buy_max_stocks.cpp
- if_it_is_possible_to_survive.cpp
- maximum_product_subset.cpp
- maxsum_of_absDifference.cpp
- smallest_subset_with_largestsum.cpp
- chocolate_distribution.cpp
- defence_kingdom.cpp
- die_hard.cpp
- three_stacks.cpp
- wine_in_gergovia.cpp
- picking_up_chicks.cpp
- chocolate_cut.cpp
- arranging_amplifiers.cpp
- min_cost_ropes.cpp
- smallest_number.cpp
- nth_fibonnaci.cpp
- 01knapsack.cpp
- climbing_stairs.cpp
- paint_stairs.cpp
- binomial_coefficient.cpp
- longest_increasing_subsequence.cpp
- min_jumps_to_reach_end.cpp
- permutation_coeff.cpp
- stickler_thief.cpp
- nth_catalan.cpp
- partition_equal_sum_subset.cpp
- subset_sum.cpp
- min_subset_sum_difference.cpp
- count_subsets_with_given_sum.cpp
- count_subset_with_given_difference.cpp
- unbounded_knapsack.cpp
- rod_cutting.cpp
- coin_change_count.cpp
- coin_change_Min.cpp
- friends_pairing.cpp
- gold_mine.cpp
- maximize_cut.cpp
- painting_fence.cpp
- longest_common_subsequence.cpp
- longest_common_substring.cpp
- edit_distance.cpp
- lcs_of_three.cpp
- print_the_lcs.cpp
- shortest_common_supersequence.cpp
- print_the_scsupersequence.cpp
- longest_palindromic_subsequence.cpp
- minimum_deletions.cpp
- longest_repeating_subsequence.cpp
- max_sum_increasing_subsequence.cpp
- count_subsequence_with_product_less_than_k.cpp
- longest_subsequence_with_given_adjacent_diff.cpp
- stickler_thief_with_no_3_consecutive.cpp
- matrix_chain_multiplication.cpp
- egg_dropping.cpp
- largest_sq_submatrix_of_1s.cpp
- pairs_with_specific_difference.cpp
- matrix_max_path_sum.cpp
- min_cost_path.cpp
- max_difference_of_01_substring.cpp
- optimal_strategy_for_game.cpp
- count_palindromic_substrings.cpp
- longest_palindromic_substring.cpp
- word_break.cpp
- wildcard_pattern_matching.cpp
- count_palindromic_subsequences.cpp
- count_occurences_in_a_matrix.cpp