M
Hi!
nur mal so ne idee:
Du könntest versuchen, von jedem Atom alle möglichen Bindungen rauszufinden, und wenns doppelte sind, kann man die ja auch erst später zusammenfassen. Das ganze ginge zB rekursiv:
FindePfad(Atom* a, list<Atom*> Pfad)
{
// Hier kannst du dann das übergebene Atom in ÜPfad eintragen
, und für jedes weitere Atom, welches an a angrenzt wiederum FindePfad
aufrufen. Du musst dir dann noch überlegen, wie du den aktuellen Pfad
am besten speichern kannst, aber so könnte es gehen
für jedes Atom
FindePfad(a->angrenzend, Pfad);
}