Python/data_structures
Ramy f16d38f26f
kd tree data structure implementation (#11532)
* Implemented KD-Tree Data Structure

* Implemented KD-Tree Data Structure. updated DIRECTORY.md.

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Create __init__.py

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Replaced legacy `np.random.rand` call with `np.random.Generator` in kd_tree/example_usage.py

* Replaced legacy `np.random.rand` call with `np.random.Generator` in kd_tree/hypercube_points.py

* added typehints and docstrings

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* docstring for search()

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Added tests. Updated docstrings/typehints

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* updated tests and used | for type annotations

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* E501 for build_kdtree.py, hypercube_points.py, nearest_neighbour_search.py

* I001 for example_usage.py and test_kdtree.py

* I001 for example_usage.py and test_kdtree.py

* Update data_structures/kd_tree/build_kdtree.py

Co-authored-by: Christian Clauss <cclauss@me.com>

* Update data_structures/kd_tree/example/hypercube_points.py

Co-authored-by: Christian Clauss <cclauss@me.com>

* Update data_structures/kd_tree/example/hypercube_points.py

Co-authored-by: Christian Clauss <cclauss@me.com>

* Added new test cases requested in Review. Refactored the test_build_kdtree() to include various checks.

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Considered ruff errors

* Considered ruff errors

* Apply suggestions from code review

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Update kd_node.py

* imported annotations from __future__

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Christian Clauss <cclauss@me.com>
2024-09-03 14:39:09 +02:00
..
arrays Enable ruff UP031 rule (#11388) 2024-04-30 06:40:26 +02:00
binary_tree Fix ruff (#11527) 2024-08-25 17:33:11 +02:00
disjoint_set [pre-commit.ci] pre-commit autoupdate (#11322) 2024-03-13 07:52:41 +01:00
hashing Fix some ARG002 per file ignores (#11382) 2024-05-01 21:27:59 +02:00
heap Fix some SIM114 per file ignores (#11395) 2024-05-10 21:59:53 +02:00
kd_tree kd tree data structure implementation (#11532) 2024-09-03 14:39:09 +02:00
linked_list Enable ruff RUF007 rule (#11349) 2024-04-20 16:20:27 +02:00
queue Added documentations (#11352) 2024-04-08 13:35:22 +02:00
stacks Enable ruff SIM102 rule (#11341) 2024-04-02 03:27:56 +02:00
trie Enable ruff PLR5501 rule (#11332) 2024-03-28 18:25:41 +01:00
__init__.py Add __init__.py files in all the directories (#2503) 2020-09-28 19:42:36 +02:00