mirror of
https://github.com/TheAlgorithms/Python.git
synced 2024-11-23 21:11:08 +00:00
Added the Chebyshev distance function (#10144)
* Added the Chebyshev distance function * Remove float cast and made error handling more precise
This commit is contained in:
parent
5d0a46814e
commit
b0aa35c7b3
20
maths/chebyshev_distance.py
Normal file
20
maths/chebyshev_distance.py
Normal file
|
@ -0,0 +1,20 @@
|
||||||
|
def chebyshev_distance(point_a: list[float], point_b: list[float]) -> float:
|
||||||
|
"""
|
||||||
|
This function calculates the Chebyshev distance (also known as the
|
||||||
|
Chessboard distance) between two n-dimensional points represented as lists.
|
||||||
|
|
||||||
|
https://en.wikipedia.org/wiki/Chebyshev_distance
|
||||||
|
|
||||||
|
>>> chebyshev_distance([1.0, 1.0], [2.0, 2.0])
|
||||||
|
1.0
|
||||||
|
>>> chebyshev_distance([1.0, 1.0, 9.0], [2.0, 2.0, -5.2])
|
||||||
|
14.2
|
||||||
|
>>> chebyshev_distance([1.0], [2.0, 2.0])
|
||||||
|
Traceback (most recent call last):
|
||||||
|
...
|
||||||
|
ValueError: Both points must have the same dimension.
|
||||||
|
"""
|
||||||
|
if len(point_a) != len(point_b):
|
||||||
|
raise ValueError("Both points must have the same dimension.")
|
||||||
|
|
||||||
|
return max(abs(a - b) for a, b in zip(point_a, point_b))
|
Loading…
Reference in New Issue
Block a user