mirror of
https://github.com/TheAlgorithms/JavaScript.git
synced 2025-07-04 07:29:47 +08:00

* chore: Switch to Node 20 + Vitest * chore: migrate to vitest mock functions * chore: code style (switch to prettier) * test: re-enable long-running test Seems the switch to Node 20 and Vitest has vastly improved the code's and / or the test's runtime! see #1193 * chore: code style * chore: fix failing tests * Updated Documentation in README.md * Update contribution guidelines to state usage of Prettier * fix: set prettier printWidth back to 80 * chore: apply updated code style automatically * fix: set prettier line endings to lf again * chore: apply updated code style automatically --------- Co-authored-by: github-actions <${GITHUB_ACTOR}@users.noreply.github.com> Co-authored-by: Lars Müller <34514239+appgurueu@users.noreply.github.com>
20 lines
742 B
JavaScript
20 lines
742 B
JavaScript
/*
|
|
Calculate the mathematical properties involving coordinates
|
|
Calculate the Distance Between 2 Points on a 2 Dimensional Plane
|
|
Example: coorDistance(2,2,14,11) will return 15
|
|
Wikipedia reference: https://en.wikipedia.org/wiki/Geographical_distance#Flat-surface_formulae
|
|
*/
|
|
const euclideanDistance = (longitude1, latitude1, longitude2, latitude2) => {
|
|
const width = longitude2 - longitude1
|
|
const height = latitude2 - latitude1
|
|
return Math.sqrt(width * width + height * height)
|
|
}
|
|
|
|
const manhattanDistance = (longitude1, latitude1, longitude2, latitude2) => {
|
|
const width = Math.abs(longitude2 - longitude1)
|
|
const height = Math.abs(latitude2 - latitude1)
|
|
return width + height
|
|
}
|
|
|
|
export { euclideanDistance, manhattanDistance }
|