IT

JAVA!

29. december 2007 af E=m*c^2 (Slettet)
Nogen der keder en lille kode i java som kan løse følgende problem

Hvis jeg har nogen tal:

2
2
2
4
5
6
4
3
2
hvordan jeg så kan samle dem sådan at jeg for at der er 4 gange 2, 1 gange 3, 2 gange 4, 1 gange 5, 1 gange 6.

Brugbart svar (1)

Svar #1
30. december 2007 af kleif

Hvor mange tal-muligheder er der?

Svar #2
30. december 2007 af E=m*c^2 (Slettet)

er ikke helt med på hvad du mener!

Brugbart svar (1)

Svar #3
30. december 2007 af kleif

De tal du har, hvor stort spektrum spænder det over.
Er det tal mellem 0 og 10, eller er det næsten uendeligt?

Svar #4
31. december 2007 af E=m*c^2 (Slettet)

det er uendeligt! det var bare en eks ovenover!

Brugbart svar (1)

Svar #5
22. januar 2008 af davie (Slettet)

Brug et Map, og tud hvis du får OutOfMemoryError (Eller hvad det nu er de kalder det hos Java-folkene)..

Brugbart svar (1)

Svar #6
23. januar 2008 af Calledk (Slettet)

Her er et link til HashTables..
Lidt hen af svar #5...
Men med hashtables, kan du gøre det at når der forkommer et nummer, slår du op i hashtabelen og addere end til.. altså lidt som en count..

Et lille link jeg bare fandt ved at søge på google.
http://java.sun.com/j2se/1.4.2/docs/api/java/util/Hashtable.html


lille Eks. bare med slamkode..:

Hashtable numbers = new Hashtable();

String ditTalString = Integer.toString(DitTal)
Integer n = (Integer)numbers.get(ditTalString);

if(n != null)
{
numbers.put(ditTalString, new Integer(n+1));
} else
{
numbers.put(ditTalString, new Integer(1));
}


Dette skulle efter teorien meget gerne virke... dog ska du nok selv lige kode lidt og læse lidt fra det link, evt søge lidt på HashTables...
Men de er meget effiktive, da du gemmer en HashKey (som er din String) og så kan du tildele den en værdi, som i dit tilfælde er der hvor du holder styr på antal forkomster...

håber det giver lidt hjælp ;)

Skriv et svar til: JAVA!

Du skal være logget ind, for at skrive et svar til dette spørgsmål. Klik her for at logge ind.
Har du ikke en bruger på Studieportalen.dk? Klik her for at oprette en bruger.