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

add group anagram algorithm #6530

Closed
wants to merge 11 commits into from

Conversation

Kishore-abhimanyu
Copy link

Describe your change:

  • 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 have a URL in its comments that points to Wikipedia or other similar explanation.
  • If this pull request resolves one or more open issues then the commit message contains Fixes: #{$ISSUE_NO}.

@algorithms-keeper algorithms-keeper bot added awaiting reviews This PR is ready to be reviewed require tests Tests [doctest/unittest/pytest] are required require type hints https://docs.python.org/3/library/typing.html labels Oct 2, 2022
Copy link

@algorithms-keeper algorithms-keeper bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Click here to look at the relevant links ⬇️

🔗 Relevant Links

Repository:

Python:

Automated review generated by algorithms-keeper. If there's any problem regarding this review, please open an issue about it.

algorithms-keeper commands and options

algorithms-keeper actions can be triggered by commenting on this PR:

  • @algorithms-keeper review to trigger the checks for only added pull request files
  • @algorithms-keeper review-all to trigger the checks for all the pull request files, including the modified files. As we cannot post review comments on lines not part of the diff, this command will post all the messages in one comment.

NOTE: Commands are in beta and so this feature is restricted only to a member or owner of the organization.

@@ -0,0 +1,28 @@
def anagram(_list):

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As there is no test file in this pull request nor any test function or class in the file strings/group_anagram.py, please provide doctest for the function anagram

Please provide return type hint for the function: anagram. If the function does not return a value, please provide the type hint as: def function() -> None:

Please provide type hint for the parameter: _list

@algorithms-keeper algorithms-keeper bot removed the require type hints https://docs.python.org/3/library/typing.html label Oct 2, 2022
Copy link

@algorithms-keeper algorithms-keeper bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Click here to look at the relevant links ⬇️

🔗 Relevant Links

Repository:

Python:

Automated review generated by algorithms-keeper. If there's any problem regarding this review, please open an issue about it.

algorithms-keeper commands and options

algorithms-keeper actions can be triggered by commenting on this PR:

  • @algorithms-keeper review to trigger the checks for only added pull request files
  • @algorithms-keeper review-all to trigger the checks for all the pull request files, including the modified files. As we cannot post review comments on lines not part of the diff, this command will post all the messages in one comment.

NOTE: Commands are in beta and so this feature is restricted only to a member or owner of the organization.

import doctest


def find_anagrams(_list: list) -> list[list[str]]:

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As there is no test file in this pull request nor any test function or class in the file strings/group_anagram.py, please provide doctest for the function find_anagrams

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I have added the doctest

Copy link
Member

@cclauss cclauss Oct 2, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This function does NOT have a doctest.

@Kishore-abhimanyu
Copy link
Author

I have resolved this issue

Copy link
Contributor

@CaedenPH CaedenPH left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please can you add more comments and docstrings so the reader understands what is happening at all times

Copy link

@algorithms-keeper algorithms-keeper bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Click here to look at the relevant links ⬇️

🔗 Relevant Links

Repository:

Python:

Automated review generated by algorithms-keeper. If there's any problem regarding this review, please open an issue about it.

algorithms-keeper commands and options

algorithms-keeper actions can be triggered by commenting on this PR:

  • @algorithms-keeper review to trigger the checks for only added pull request files
  • @algorithms-keeper review-all to trigger the checks for all the pull request files, including the modified files. As we cannot post review comments on lines not part of the diff, this command will post all the messages in one comment.

NOTE: Commands are in beta and so this feature is restricted only to a member or owner of the organization.

strings/group_anagram.py Show resolved Hide resolved
@Kishore-abhimanyu
Copy link
Author

Please can you add more comments and docstrings so the reader understands what is happening at all times

Comment are added

@Kishore-abhimanyu
Copy link
Author

Can you check now

@algorithms-keeper algorithms-keeper bot added the tests are failing Do not merge until tests pass label Oct 2, 2022
@algorithms-keeper algorithms-keeper bot added require type hints https://docs.python.org/3/library/typing.html and removed require tests Tests [doctest/unittest/pytest] are required labels Oct 2, 2022
Copy link

@algorithms-keeper algorithms-keeper bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Click here to look at the relevant links ⬇️

🔗 Relevant Links

Repository:

Python:

Automated review generated by algorithms-keeper. If there's any problem regarding this review, please open an issue about it.

algorithms-keeper commands and options

algorithms-keeper actions can be triggered by commenting on this PR:

  • @algorithms-keeper review to trigger the checks for only added pull request files
  • @algorithms-keeper review-all to trigger the checks for all the pull request files, including the modified files. As we cannot post review comments on lines not part of the diff, this command will post all the messages in one comment.

NOTE: Commands are in beta and so this feature is restricted only to a member or owner of the organization.

return anagrams


def test_find_anagrams():

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please provide return type hint for the function: test_find_anagrams. If the function does not return a value, please provide the type hint as: def function() -> None:

@algorithms-keeper algorithms-keeper bot removed the require type hints https://docs.python.org/3/library/typing.html label Oct 2, 2022
@algorithms-keeper algorithms-keeper bot removed the tests are failing Do not merge until tests pass label Oct 2, 2022
strings/group_anagram.py Outdated Show resolved Hide resolved
strings/group_anagram.py Outdated Show resolved Hide resolved
strings/group_anagram.py Outdated Show resolved Hide resolved
strings/group_anagram.py Outdated Show resolved Hide resolved
strings/group_anagram.py Outdated Show resolved Hide resolved
return anagrams


def test_find_anagrams() -> None:
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Put the test in the function so that if someone copies the function into their code, the test comes with it.

@Kishore-abhimanyu
Copy link
Author

The changes has been updated. Could you check the changes

@cclauss
Copy link
Member

cclauss commented Oct 9, 2022

mypy.....................................................................Failed

  • hook id: mypy
  • exit code: 1

strings/group_anagram.py:9: error: Need type annotation for "char_map" (hint: "char_map: Dict[, ] = ...")

@cclauss
Copy link
Member

cclauss commented Oct 16, 2022

Please read CONTRIBUTING.md.

Hacktoberfest is strenuous for our team of active volunteer maintainers. That small team now has 200+ open pull requests to review. We have high standards for our submissions which are described in CONTRIBUTING.md. Our continuous integration tests help to ensure that our standards are met before we review and merge deserving pull requests. This is further complicated by the fact that we already have lots of algorithms and would like to avoid duplicates.

For these reasons, I will close all open pull requests failing tests so that our unpaid team has a smaller mountain to climb. If you want us to land your pull request, please read CONTRIBUTING.md carefully and try again.

@cclauss cclauss closed this Oct 16, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
awaiting reviews This PR is ready to be reviewed
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants