C++ - kleinster Abstand zwischen Punkten finden

Es gibt eine Datenmatrix mit 100 Punkten. Jeder dieser 100 Punkte hat 3 Koordinaten (X, Y, Z). Nun sollen die zwei Punkte gefunden werden welche den kleinsten Abstand zueinander in dieser Datenmatrix aufweisen.

Abstandsberechung mittels Euklidschen Abstand ist soweit klar.
Ich habe aber Probleme bei der Initialisierung des Arrays und der for Schleifen.

Vielen Dank für Vorschläge/Tipps.

Hallo!
Erster naiver Ansatz ist, den euklidischen Abstand von jedem Punkt zu jedem anderen zu berechnen und jeweils zu schauen, ob dieser kleiner als das bisher gefundene Minimum ist.
Also in etwa sowas hier (das Array points beinhalte die Punkte, die Funktion Euklid() berechnet den Abstandsbetrag zwischen 2 Punkten):

double minDist = DBL\_MAX;
int idxPt1 = -1, idxPt2 = -1;
for (int i=0; i

j läuft von i+1 bis 100, weil die Entfernung ja symmetrisch ist und man deswegen die Entfernung für jedes Punktepaar nur einmal berechnen muss.

Gruß,
Martin

Martin, tausend Dank!