Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Consolidate duplicate implementations of max subarray #8849

Merged
merged 6 commits into from
Jul 11, 2023

Conversation

tianyizheng02
Copy link
Contributor

Describe your change:

Fixes #8812

  • For the implementation of the dynamic programming algorithm for max subarray sum, I deleted maths/kadanes.py, maths/largest_subarray_sum.py, and other/maximum_subarray.py in favor of dynamic_programming/max_sum_contiguous_subsequence.py, which I renamed to max_subarray_sum.py.
  • For the implementation of the divide-and-conquer algorithm, I deleted divide_and_conquer/max_subarray_sum.py in favor of divide_and_conquer/max_sub_array.py, which I renamed to divide_and_conquer/max_subarray.py.
  • Added type hints and doctests to both implementations, with most of the tests having been taken from the deleted implementations.
  • Add an algorithm?
  • Fix a bug or typo in an existing algorithm?
  • Documentation change?

Checklist:

  • I have read CONTRIBUTING.md.
  • This pull request is all my own work -- I have not plagiarized.
  • I know that pull requests will not be merged if they fail the automated tests.
  • This PR only changes one algorithm file. To ease review, please open separate PRs for separate algorithms.
  • All new Python files are placed inside an existing directory.
  • All filenames are in all lowercase characters with no spaces or dashes.
  • All functions and variable names follow Python naming conventions.
  • All function parameters and return values are annotated with Python type hints.
  • All functions have doctests that pass the automated testing.
  • All new algorithms include at least one URL that points to Wikipedia or another similar explanation.
  • If this pull request resolves one or more open issues then the description above includes the issue number(s) with a closing keyword: "Fixes #ISSUE-NUMBER".

@cclauss cclauss enabled auto-merge (squash) July 11, 2023 09:43
@cclauss cclauss merged commit a0eec90 into TheAlgorithms:master Jul 11, 2023
@tianyizheng02 tianyizheng02 deleted the duplicate-max-subarr-sum branch July 11, 2023 09:51
@tianyizheng02 tianyizheng02 mentioned this pull request Jul 31, 2023
14 tasks
sedatguzelsemme pushed a commit to sedatguzelsemme/Python that referenced this pull request Sep 15, 2024
…8849)

* Remove max subarray sum duplicate implementations

* updating DIRECTORY.md

* Rename max_sum_contiguous_subsequence.py

* Fix typo in dynamic_programming/max_subarray_sum.py

* Remove duplicate divide and conquer max subarray

* updating DIRECTORY.md

---------

Co-authored-by: github-actions <${GITHUB_ACTOR}@users.noreply.github.com>
@isidroas isidroas mentioned this pull request Jan 25, 2025
14 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

We have WAY too many implementations of max subarray sum
2 participants