0
was der beste Weg ist, um die häufigste Element der flann Matrix wie flann::Matrix<int> k_indices
Finden Sie das häufigste Element in flann Matrixtyp
was der beste Weg ist, um die häufigste Element der flann Matrix wie flann::Matrix<int> k_indices
Finden Sie das häufigste Element in flann Matrixtyp
ich finden vorschlagen, dass Sie eine map<int,int> counters
zu erklären, dann jedes Element Ihrer Matrix einfügen in die Karte und wenn das Element bereits vorhanden erhöht nur die relativen Zähler:
map<int,int> counters;
...
if(counters.count(yourNumber)==0)
counters[yourNumber] = 1
else
counters[yourNumber]++
und nach dem Zähler des letzten Elements erhalten:
return counters.rbegin()->second;
Ich hoffe es hilft!
Diese Methode benötigt zusätzlichen Speicher, ich akzeptiere es trotzdem. Vielen Dank. – neouyghur
ja du hast Recht! Hier ist die Komplexität des Gedächtnisses O (N), wobei N die Anzahl der verschiedenen Elemente in der Matrix ist. Es hängt also wirklich von der Anzahl der Elemente ab (klein, groß ...). Eine Lösung mit weniger Speicherbedarf sollte vorhanden sein, aber unter Berücksichtigung der Laufzeit möglicherweise weniger effizient sein. Es ist immer ein Kompromiss zwischen Speicher und Laufzeit. –