Gib dem größten Wert eine Variable
Frag dann ab if i == max, also ob dieser Wert bereits exisitert
Wenn ja soll er einfach weiter suchen und den nächsten Wert nehmen.
Gib dem größten Wert eine Variable
Frag dann ab if i == max, also ob dieser Wert bereits exisitert
Wenn ja soll er einfach weiter suchen und den nächsten Wert nehmen.
Das würde schief gehen, sobald die größte zahl mehrfach in der arraylist drin ist.
Mal abgesehen von den fortgeschritteneren antworten, hätte ich noch eine einfache Lösung für dich. Schließlich kann ich mir bei der einfachen problemstellung kaum vorstellen, dass etwas auf den niveau erwartet wird. Dein Grundkonzept mit dem Durchlauf der ganzen arrayliste passt ja eigentlich. Du brauchst neben max aber noch 2 weitere variablen. Dann änderst du die if abfrage so ab, dass du ein mal nach dem größten wert abfragst, falls die Bedingung nicht zutrifft nach dem 2. Größten und dann nach dem 3. Größten. Wenn du jetzt einen neuen max wert hast, kannst du den ja nicht einfach überschreiben, sondern musst den alten wert quasi nach hinten aufrücken, sodass dein alter max wert der neue 2. Größte wert ist und der alte 2. Größte der neue 3. Größte
Diese Lösug gäfellt mir eigentlich am besten nur kann ich die so leider nicht umsetzten bzw. vlt kannst du mir da helfen.
Das Problem ist halt das die Liste bzw. die Positionen mit einer aneren Array Liste zusammenhängen. Also ich habe eine Arrayliste mit Strings und dann diese mit Zahlen wo ich die 3 größten von Brauche.Und der String in Position 5 zb. gehört zur Zahl in position 5 und so weiter.
Wenn ich ja jetzt aber eine Liste sortierer sind ja die Positionen Vertauscht gibt es da ne Lösung?
Du könntest eine TreeMap verwenden, welche Integer auf String mapped. Das tolle an einer TreeMap ist, dass die Key Elemente darin automatisch sortiert werden, direkt beim Erstellen davon
Dann besorgst du dir das EntrySet der Map, welches ein Set<Entry> ist und kannst auf die letzten 3 Einträge davon zugreifen.
Ich hoffe das ist so verständlich für dich, sonst gib mir kurz ne Rückmeldung, dann schreib ich schnell bisschen code zusammen @
Du könntest eine TreeMap verwenden, welche Integer auf String mapped. Das tolle an einer TreeMap ist, dass die Key Elemente darin automatisch sortiert werden, direkt beim Erstellen davon
Dann besorgst du dir das EntrySet der Map, welches ein Set<Entry> ist und kannst auf die letzten 3 Einträge davon zugreifen.
Ich hoffe das ist so verständlich für dich, sonst gib mir kurz ne Rückmeldung, dann schreib ich schnell bisschen code zusammen @
Oh das klingt für eine Perfekt Lösung dafür. Müsste mir es aber erstmal genau angucken da ich die Funktion so noch garnicht kenne.
Edit:Ok habs mir mal angeguckt glaube das geht doch nicht dafür???? Ich erkläre mall was genau ich mache:
Ich habe eine String Arraylist die Schon alphabetisch sortiert ist. Diese durchsuche ich mittelst Binärer Suche mit einem Prefix. Und aus dem was dann gesucht wurde, sollen mir die 3 mit der Höchsten gewichtung angezigt werden. Wird dann von denn 3 eins vom Benutzer ausgewählt soll für denn String die Gewichtung ein hochgezählt werden.
@, da ist die Treemap wohl doch der falsche Ansatz dann.
Allerdings solltest du hierfür auf jeden Fall ne Map verwenden, allerdings eine Map<String,Integer>, da du ja dem String einen Wert zuweißen möchtest..
Dann kannst du in der Map deine relevanten Strings raussuchen und diese nach ihrem zugeordneten Wert sortieren und dann den Wert eins hochzählen.
Zwei im Grunde unabhängige Arraylisten hierfür zu verwenden, wenn Werte zugeordnet werden ist nicht gut, denn dafür gibts die Map.
Edit: Du erstellst dir die Map und durchsuchst dann das EntrySet (Set<Entry>) nach den entsprechenden Werten im Key (String) und sortierst die Liste der gefunden Entrys dann nach dem entry.Value (Integer). Das ganze kann man im Grunde auch ganz toll mit nem Stream lösen!
Du solltest dringend deinen Code in verschiedene Klassen packen um mehr Übersichtlichkeit zu gewährleisten (du tust dir selbst damit auch nen gefallen :P)!
Hätte garnicht den gesamten Code gebraucht, die Methode hätte es auch getan bzw einfach das Bild ohne die Error-Message
Du solltest dringend deinen Code in verschiedene Klassen packen um mehr Übersichtlichkeit zu gewährleisten (du tust dir selbst damit auch nen gefallen :P)!
Hätte garnicht den gesamten Code gebraucht, die Methode hätte es auch getan bzw einfach das Bild ohne die Error-Message
Ja ich weiß habe das Projekt von nem anderen Studenten übernommen und da schon so einiges in neue Methoden und Klassen gepackt leider imemr noch sehr unordentlich
Daran alleine liegt es noch nicht und mir ist aufgefallen je nachdem wo ich denn tremap initzialisiere kommt ein anderer fehler
mach ich das in der Methode kommt der Fehler denn ich als Bild geposted habe in der Klasse kommt:
cant find symbol
symbol: method getkey()
location: variable e of type object
Thema nach Benutzer durchsuchen? 08/20/2012 - Main - 4 Replies Hey Leute,
ich habe ein Thread in der Freebies Section auf und wollte fragen ob es möglich ist anzuzeigen zu lassen ob jemand in meinem Thread mehrfach gepostet hat. Ich hab keine Lust alles von Hand nachgucken, ich hab so'ein Verdacht das jemand mehrfach gepostet hat (was ich bei mir verboten hab da es eine verlosung ist)
Internetseite nach Wort durchsuchen 01/15/2011 - AutoIt - 1 Replies Hallo, ich möchte ein Programm erstellen, mit dem ich bei facebook automatisch poken(anstupsen) kann. Ich hab das jetzt mit Pixelsearch gemacht, dass wenn es an der einen stelle so blau ist, zuerst auf das poke und dann auf diesen knopf poke gedrückt wird. Fuktioniert aber wenn jemand Geburtstag hat und das ein bisschen weiter unten steht nicht , oder wenn ich auf eine andere Seite geh, drückt er dort auf diesen link der dort steht.
Meine Frage, ist es möglich, die Internetseite nach "Poke...
[PHP] Array pushen und durchsuchen 01/03/2011 - Web Development - 4 Replies Ich habe folgendes Problem:
ich möchte jede Zeile einer Textdatei in ein Array pushen und dieses danach nach einem Bestimmten Eintrag durchsuchen.
Folgender Code:
<?php
$hallo = array();
$test = $_GET;
$datei = fopen("test.txt","r");
while (!feof($datei))
{
Datenbank nach Sachen schneller durchsuchen? 07/16/2010 - Metin2 Private Server - 8 Replies Hey Com,
da ich in der SuFu nichts darüber gefunden habe, wollte ich meine Frage einfach mal in einem Thread fragen.
Ich möchte in der Datenbank ein Item finden, welches ich in meinem Inventar habe. Da es aber über 1800 Seiten sind, wollte ich Euch fragen, ob es einen schnelleren Weg gibt, diese eine Sache zu finden.
Ich bedanke mich im Vorraus.
Bitte kein Flame/ Spam. Danke.