Ich versuche eine Funktion zu schreiben, die eine Zahl als Eingabe nimmt und die vorherigen und nächsten Zahlen aus einer unsortierten Liste in sortierter Reihenfolge ausgibt. zB wenn die Liste [29,1,49,8] ist, sollte der Aufruf der Funktion (8) zurückkehren [1,29] Nur eine mögliche Lösung mit minimaler Komplexität ist Sortierung, gibt es andere Methoden, die weniger haben avg Komplexität? Die Liste wird nach dem Zufallsprinzip von einer festen Größe von 100Fnd sofortige große und kleine Zahl für eine Nummer aus einer unsortierten Liste ohne zu sortieren?
Q
Fnd sofortige große und kleine Zahl für eine Nummer aus einer unsortierten Liste ohne zu sortieren?
0
A
Antwort
1
generiert keine Notwendigkeit zu sortieren. Gehen Sie einfach durch das Array und pflegen Sie best_delta_positive und best_delta_negative zusammen mit den Indizes, in denen sie gefunden wurden, falls erforderlich.
+0
Wird das funktionieren, wenn die Liste [29,22,65,8] ist, wo es kein Delta-Negativ gibt? .Die Liste wird zufällig generiert –
+0
Awesome!, Das wird in dieser Situation funktionieren. Danke Malcolm –
Verwandte Themen
- 1. Multiplizieren Sie eine Nummer aus einer Liste und eine Zahl aus einer Textdatei?
- 2. sofortige Kinder einer Liste
- 3. Icon Badge Nummer * ohne“eine Zahl
- 4. Schnellster Weg, um die größten X-Nummern aus einer sehr großen unsortierten Liste zu erhalten?
- 5. geben Sie einige kleine und große Zahlen, gewünschte Nummer - ohne Schleifen
- 6. Konvertieren String für große und kleine Zahlen sas
- 7. Factoring eine große Zahl
- 8. Sortier Liste von Listen und bekommen Indizes in unsortierten Liste
- 9. Android kleine und große Benachrichtigungen
- 10. Echo eine sehr große Zahl
- 11. BeautifulSoup erhalten href aus unsortierten Liste
- 12. Kleine große Abfrage mit Schleife?
- 13. Entfernen von Duplikaten aus einer unsortierten Verkettungsliste
- 14. Fehler beim Sortieren einer Liste ohne Besetzung
- 15. Mehrere Terminal, um eine Nummer aus einer Liste auszuwählen
- 16. Sortieren Postleitzahl für Menü/Liste
- 17. Eine Nummer aus einer Nicht-Nummer-Zeichenkette ergreifend
- 18. Zahlen Nehmen Sie aus einem unsortierten String und wandeln sie mit jeder Nummer auf eine Liste durch Komma getrennt
- 19. schnellste Möglichkeit, eine große Liste zu teilen
- 20. Große Nummer in Powershell manipulieren
- 21. Große Nummer zu Short Java Android
- 22. Eine Funktion, die eine Zahl und eine Liste nimmt und eine Liste mit allen Positionen dieser Zahl in Erlang ausgibt.
- 23. Sortieren einer Liste aus einer anderen Liste IDs
- 24. Eine Nummer in eine verkettete Liste einfügen und dabei in java weiter sortieren
- 25. Go print große Zahl
- 26. Metadaten für große und kleine Dateien in Bezug auf Hadoop
- 27. Foundation verschiedenen Stil für kleine - mittlere - große
- 28. Parse eine Zahl aus einer Zeichenfolge
- 29. C# senden große und kleine Datenpuffer durch Socket und TCP
- 30. Wie nehme ich eine Nummer aus einer Textdatei und ersetze sie durch diese Nummer +1?
Was ist, wenn keine Zahl kleiner als (oder größer als) der angeforderte Wert ist. Das heißt, wenn Ihre Liste "[29, 1, 49, 8]" ist und der Aufruf "Funktion (50)" ist? Gibt es mehr als einen Funktionsaufruf pro Liste? –
Oh! Ich habe nicht einmal über dieses Szenario nachgedacht, dann müssen wir zuerst überprüfen, ob das Element existiert oder nicht und dann weitermachen, denke ich. Ich nehme an, dass es eine Funktion gibt, aber es könnte angerufen werden oder möglicherweise nicht in sich funktioniert. Irgendwelche Vorschläge Jim? –