array.has(...)??
-
hallo zusammen,
ich bin gerade dabei, nen paar alte python-scripte in cpp umzusetzen (zur übung), wobei mir eins fehlte:
kann man wenn man mit
int mein_array[] = (1,3,4,5);
irgendwie SCHNELL (also ohne for (int i=0;, ...) )
herausfinden, ob ein array ein element (zb. 3) enthält?ich wusste leider wirklich nicht, wonach ich in diesem fall suchen sollte,
da sowas in python immer mit
for i in mein_array:
...
gelöst wurde.dankeschön im voraus und
liebe grüße
hannes
-
Wenn das Array nicht gerade sortiert ist, wie willst du ohne Durchlaufen feststellen, ob ein Element im Array ist?
-
Hallo
sieh zum Beispiel std::find, was intern natürlich auch bloß eine Schleife abläft.
bis bald
akari
-
Wenn du sicherstellen kannst, daß dein Array sortiert ist, funktioniert auch std::binary_search() (liefert eine Ja/Nein-Entscheidung) oder std::lower_bound() (liefert die Position des gesuchten Elements) - beide haben eine Laufzeit von O(log n).