Skip to content

bluemyria/PythonAlgorithmsDataStructs

Repository files navigation

Personal copy for Python

My hints for specific tasks are included in epi_judge_python on top of the corresponding python file. for the full fledged original version (no hints included) visit https://github.com/adnanaziz/EPIJudge

EPI Judge

Running the judge using IDEs

Python

PyCharm, Eclipse, NetBeans

Running the judge from the command line

Python

$ python3 <program_name>.py

Problem to Program Mapping / only for PYTHON

Problem Python
Bootcamp: Primitive Types count_bits.py
Computing the parity of a word parity.py
Swap bits swap_bits.py
Reverse bits reverse_bits.py
Find a closest integer with the same weight closest_int_same_weight.py
Compute x * y without arithmetical operators primitive_multiply.py
Compute x/y primitive_divide.py
Compute x^y power_x_y.py
Reverse digits reverse_digits.py
Check if a decimal integer is a palindrome is_number_palindromic.py
Generate uniform random numbers uniform_random_number.py
Rectangle intersection rectangle_intersection.py
Bootcamp: Arrays even_odd_array.py
The Dutch national flag problem dutch_national_flag.py
Increment an arbitrary-precision integer int_as_array_increment.py
Multiply two arbitrary-precision integers int_as_array_multiply.py
Advancing through an array advance_by_offsets.py
Delete duplicates from a sorted array sorted_array_remove_dups.py
Buy and sell a stock once buy_and_sell_stock.py
Buy and sell a stock twice buy_and_sell_stock_twice.py
Computing an alternation alternating_array.py
Enumerate all primes to n prime_sieve.py
Permute the elements of an array apply_permutation.py
Compute the next permutation next_permutation.py
Sample offline data offline_sampling.py
Sample online data online_sampling.py
Compute a random permutation random_permutation.py
Compute a random subset random_subset.py
Generate nonuniform random numbers nonuniform_random_number.py
The Sudoku checker problem is_valid_sudoku.py
Compute the spiral ordering of a 2D array spiral_ordering_segments.py
Rotate a 2D array matrix_rotation.py
Compute rows in Pascal's Triangle pascal_triangle.py
Interconvert strings and integers string_integer_interconversion.py
Base conversion convert_base.py
Compute the spreadsheet column encoding spreadsheet_encoding.py
Replace and remove replace_and_remove.py
Test palindromicity is_string_palindromic_punctuation.py
Reverse all the words in a sentence reverse_words.py
Compute all mnemonics for a phone number phone_number_mnemonic.py
The look-and-say problem look_and_say.py
Convert from Roman to decimal roman_to_integer.py
Compute all valid IP addresses valid_ip_addresses.py
Write a string sinusoidally snake_string.py
Implement run-length encoding run_length_compression.py
Find the first occurrence of a substring substring_match.py
Bootcamp: Linked Lists search_in_list.py
Bootcamp: Linked Lists insert_in_list.py
Bootcamp: Linked Lists delete_from_list.py
Merge two sorted lists sorted_lists_merge.py
Reverse a single sublist reverse_sublist.py
Test for cyclicity is_list_cyclic.py
Test for overlapping lists - lists are cycle-free do_terminated_lists_overlap.py
Test for overlapping lists - lists may have cycles do_lists_overlap.py
Delete a node from a singly linked list delete_node_from_list.py
Remove the kth last element from a list delete_kth_last_from_list.py
Remove duplicates from a sorted list remove_duplicates_from_sorted_list.py
Implement cyclic right shift for singly linked lists list_cyclic_right_shift.py
Implement even-odd merge even_odd_list_merge.py
Test whether a singly linked list is palindromic is_list_palindromic.py
Implement list pivoting pivot_list.py
Add list-based integers int_as_list_add.py
Implement a stack with max API stack_with_max.py
Evaluate RPN expressions evaluate_rpn.py
Test a string over ''{,},(,),[,]'' for well-formedness is_valid_parenthesization.py
Normalize pathnames directory_path_normalization.py
Compute buildings with a sunset view sunset_view.py
Compute binary tree nodes in order of increasing depth tree_level_order.py
Implement a circular queue circular_queue.py
Implement a queue using stacks queue_from_stacks.py
Implement a queue with max API queue_with_max.py
Test if a binary tree is height-balanced is_tree_balanced.py
Test if a binary tree is symmetric is_tree_symmetric.py
Compute the lowest common ancestor in a binary tree lowest_common_ancestor.py
Compute the LCA when nodes have parent pointers lowest_common_ancestor_with_parent.py
Sum the root-to-leaf paths in a binary tree sum_root_to_leaf.py
Find a root to leaf path with specified sum path_sum.py
Implement an inorder traversal without recursion tree_inorder.py
Implement a preorder traversal without recursion tree_preorder.py
Compute the kth node in an inorder traversal kth_node_in_tree.py
Compute the successor successor_in_tree.py
Implement an inorder traversal with O(1) space tree_with_parent_inorder.py
Reconstruct a binary tree from traversal data tree_from_preorder_inorder.py
Reconstruct a binary tree from a preorder traversal with markers tree_from_preorder_with_null.py
Form a linked list from the leaves of a binary tree tree_connect_leaves.py
Compute the exterior of a binary tree tree_exterior.py
Compute the right sibling tree tree_right_sibling.py
Merge sorted files sorted_arrays_merge.py
Sort an increasing-decreasing array sort_increasing_decreasing_array.py
Sort an almost-sorted array sort_almost_sorted_array.py
Compute the k closest stars k_closest_stars.py
Compute the median of online data online_median.py
Compute the k largest elements in a max-heap k_largest_in_heap.py
Search a sorted array for first occurrence of k search_first_key.py
Search a sorted array for entry equal to its index search_entry_equal_to_index.py
Search a cyclically sorted array search_shifted_sorted_array.py
Compute the integer square root int_square_root.py
Compute the real square root real_square_root.py
Search in a 2D sorted array search_row_col_sorted_matrix.py
Find the min and max simultaneously search_for_min_max_in_array.py
Find the kth largest element kth_largest_in_array.py
Find the missing IP address absent_value_array.py
Find the duplicate and missing elements search_for_missing_element.py
Bootcamp: Hash Tables anagrams.py
Test for palindromic permutations is_string_permutable_to_palindrome.py
Is an anonymous letter constructible? is_anonymous_letter_constructible.py
Implement an ISBN cache lru_cache.py
Compute the LCA, optimizing for close ancestors lowest_common_ancestor_close_ancestor.py
Find the nearest repeated entries in an array nearest_repeated_entries.py
Find the smallest subarray covering all values smallest_subarray_covering_set.py
Find smallest subarray sequentially covering all values smallest_subarray_covering_all_values.py
Find the longest subarray with distinct entries longest_subarray_with_distinct_values.py
Find the length of a longest contained interval longest_contained_interval.py
Compute all string decompositions string_decompositions_into_dictionary_words.py
Test the Collatz conjecture collatz_checker.py
Compute the intersection of two sorted arrays intersect_sorted_arrays.py
Merge two sorted arrays two_sorted_arrays_merge.py
Computing the h-index h_index.py
Remove first-name duplicates remove_duplicates.py
Smallest nonconstructible value smallest_nonconstructible_value.py
Render a calendar calendar_rendering.py
Merging intervals interval_add.py
Compute the union of intervals intervals_union.py
Partitioning and sorting an array with many repeated entries group_equal_entries.py
Team photo day - 1 is_array_dominated.py
Implement a fast sorting algorithm for lists sort_list.py
Compute a salary threshold find_salary_threshold.py
Test if a binary tree satisfies the BST property is_tree_a_bst.py
Find the first key greater than a given value in a BST search_first_greater_value_in_bst.py
Find the k largest elements in a BST k_largest_values_in_bst.py
Compute the LCA in a BST lowest_common_ancestor_in_bst.py
Reconstruct a BST from traversal data bst_from_preorder.py
Find the closest entries in three sorted arrays minimum_distance_3_sorted_arrays.py
Enumerate numbers of the form a + b sqrt(2) a_b_sqrt2.py
Build a minimum height BST from a sorted array bst_from_sorted_array.py
Test if three BST nodes are totally ordered descendant_and_ancestor_in_bst.py
The range lookup problem range_lookup_in_bst.py
Add credits adding_credits.py
The Towers of Hanoi problem hanoi.py
Generate all nonattacking placements of n-Queens n_queens.py
Generate permutations permutations.py
Generate the power set power_set.py
Generate all subsets of size k combinations.py
Generate strings of matched parens enumerate_balanced_parentheses.py
Generate palindromic decompositions enumerate_palindromic_decompositions.py
Generate binary trees enumerate_trees.py
Implement a Sudoku solver sudoku_solve.py
Compute a Gray code gray_code.py
Bootcamp: Dynamic Programming fibonacci.py
Bootcamp: Dynamic Programming max_sum_subarray.py
Count the number of score combinations number_of_score_combinations.py
Compute the Levenshtein distance levenshtein_distance.py
Count the number of ways to traverse a 2D array number_of_traversals_matrix.py
Compute the binomial coefficients binomial_coefficients.py
Search for a sequence in a 2D array is_string_in_matrix.py
The knapsack problem knapsack.py
The bedbathandbeyond.com problem is_string_decomposable_into_words.py
Find the minimum weight path in a triangle minimum_weight_path_in_a_triangle.py
Pick up coins for maximum gain picking_up_coins.py
Count the number of moves to climb stairs number_of_traversals_staircase.py
The pretty printing problem pretty_printing.py
Find the longest nondecreasing subsequence longest_nondecreasing_subsequence.py
Compute an optimum assignment of tasks task_pairing.py
Schedule to minimize waiting time minimum_waiting_time.py
The interval covering problem minimum_points_covering_intervals.py
The interval covering problem two_sum.py
The 3-sum problem three_sum.py
Find the majority element majority_element.py
The gasup problem refueling_schedule.py
Compute the maximum water trapped by a pair of vertical lines max_trapped_water.py
Compute the largest rectangle under the skyline largest_rectangle_under_skyline.py
Search a maze search_maze.py
Paint a Boolean matrix matrix_connected_regions.py
Compute enclosed regions matrix_enclosed_regions.py
Deadlock detection deadlock_detection.py
Clone a graph graph_clone.py
Making wired connections is_circuit_wirable.py
Transform one string to another string_transformability.py
Team photo day - 2 max_teams_in_photograph.py
Compute the greatest common divisor gcd.py
Find the first missing positive entry first_missing_positive_entry.py
Buy and sell a stock k times buy_and_sell_stock_k_times.py
Compute the maximum product of all entries but one max_product_all_but_one.py
Compute the longest contiguous increasing subarray longest_increasing_subarray.py
Rotate an array rotate_array.py
Identify positions attacked by rooks rook_attack.py
Justify text left_right_justify_text.py
Implement list zipping zip_list.py
Copy a postings list copy_posting_list.py
Compute the longest substring with matching parens longest_substring_with_matching_parentheses.py
Compute the maximum of a sliding window max_of_sliding_window.py
Implement a postorder traversal without recursion tree_postorder.py
Compute fair bonuses bonus.py
Search a sorted array of unknown length search_unknown_length_array.py
Search in two sorted arrays kth_largest_element_in_two_sorted_arrays.py
Find the kth largest element - large n, small k kth_largest_element_in_long_array.py
Find an element that appears only once element_appearing_once.py
Find the line through the most points line_through_most_points.py
Convert a sorted doubly linked list into a BST sorted_list_to_bst.py
Convert a BST to a sorted doubly linked list bst_to_sorted_list.py
Merge two BSTs bst_merge.py
Implement regular expression matching regular_expression.py
Synthesize an expression insert_operators_in_string.py
Count inversions count_inversions.py
Draw the skyline drawing_skyline.py
Measure with defective jugs defective_jugs.py
Compute the maximum subarray sum in a circular array maximum_subarray_in_circular_array.py
Determine the critical height max_safe_height.py
Find the maximum 2D subarray max_submatrix.py
Find the maximum 2D subarray max_square_submatrix.py
Implement Huffman coding huffman_coding.py
Trapping water max_water_trappable.py
The heavy hitter problem search_frequent_items.py
Find the longest subarray whose sum <= k longest_subarray_with_sum_constraint.py
Road network road_network.py
Test if arbitrage is possible arbitrage.py

About

Personal copy from https://github.com/adnanaziz/EPIJudge including own code and hints for solving specific tasks

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published