Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
package com.thealgorithms.maths;

/**
* Distance Between Two Points in 2D Space.
*
* <p>This class provides a method to calculate the Euclidean distance between two points in a
* two-dimensional plane.
*
* <p>Formula: d = sqrt((x2 - x1)^2 + (y2 - y1)^2)
*
* <p>Reference: https://en.wikipedia.org/wiki/Euclidean_distance
*/
public final class DistanceBetweenTwoPoints {

private DistanceBetweenTwoPoints() {
// Utility class; prevent instantiation
}

/**
* Calculate the Euclidean distance between two points.
*
* @param x1 x-coordinate of the first point
* @param y1 y-coordinate of the first point
* @param x2 x-coordinate of the second point
* @param y2 y-coordinate of the second point
* @return Euclidean distance between the two points
*/
public static double calculate(final double x1, final double y1, final double x2, final double y2) {
final double deltaX = x2 - x1;
final double deltaY = y2 - y1;
return Math.sqrt(deltaX * deltaX + deltaY * deltaY);
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
package com.thealgorithms.maths;

import static org.junit.jupiter.api.Assertions.assertEquals;

import org.junit.jupiter.api.Test;

class DistanceBetweenTwoPointsTest {

@Test
void testDistanceSimple() {
assertEquals(5.0, DistanceBetweenTwoPoints.calculate(0, 0, 3, 4), 1e-9);
}

@Test
void testDistanceNegativeCoordinates() {
assertEquals(5.0, DistanceBetweenTwoPoints.calculate(-1, -1, 2, 3), 1e-9);
}

@Test
void testSamePoint() {
assertEquals(0.0, DistanceBetweenTwoPoints.calculate(2, 2, 2, 2), 1e-9);
}
}