+ Antworten
Seite 3 von 20 ErsteErste 1 2 3 4 5 6 13 ... LetzteLetzte
Ergebnis 41 bis 60 von 398

Thema: Java Quiz

  1. #41
    Frequent User Megabyte
    Registriert seit
    01.08.2013
    Fachbeiträge
    1.723
    Genannt
    111 Post(s)
    Die wurde doch schon gepostet

    Aber wenn du die Frage nach der effizientesten meintest, dann dürfte es wohl keine eindeutige Lösung geben

  2. Es bedanken sich:
    Natac (23.08.2013)
  3. #42
    User Kilobyte
    Registriert seit
    01.08.2013
    Fachbeiträge
    224
    Genannt
    9 Post(s)
    Ähm... ja, das meinte ich.
    Geändert von Natac (23.08.2013 um 11:58 Uhr) Grund: Rechtschreibung -.-

  4. #43
    User Megabyte Avatar von Timothy_Truckle
    Registriert seit
    01.08.2013
    Ort
    Wasserkuppe
    Fachbeiträge
    1.329
    Genannt
    85 Post(s)
    Blog-Einträge
    5
    Zitat Zitat von Natac Beitrag anzeigen
    Fast... Deine Funktion ist falsch für Zahlen < 2.
    nur für int kleiner 1...
    bye
    TT
    Geändert von Timothy_Truckle (23.08.2013 um 12:03 Uhr)

  5. #44
    User Kilobyte
    Registriert seit
    01.08.2013
    Fachbeiträge
    224
    Genannt
    9 Post(s)
    1 ist aber (per Definition) keine Primzahl. Die kleinste Primzahl ist 2.

  6. Es bedanken sich:
    Timothy_Truckle (23.08.2013)
  7. #45
    User Megabyte Avatar von Timothy_Truckle
    Registriert seit
    01.08.2013
    Ort
    Wasserkuppe
    Fachbeiträge
    1.329
    Genannt
    85 Post(s)
    Blog-Einträge
    5
    Zitat Zitat von Natac Beitrag anzeigen
    1 ist aber (per Definition) keine Primzahl. Die kleinste Primzahl ist 2.
    gut, wieder was gelernt...

    bye
    TT

  8. #46
    Global Moderator Floppy Disc Themenstarter
    Avatar von Landei
    Registriert seit
    31.07.2013
    Ort
    Sandersdorf-Brehna
    Fachbeiträge
    991
    Genannt
    164 Post(s)
    Blog-Einträge
    27
    Mal was neues: Geht das?
    Java Code:
    1.  
    2. String [] blubb [] = null;

  9. #47
    Global Moderator Viertel Gigabyte
    Registriert seit
    05.08.2008
    Fachbeiträge
    4.913
    Genannt
    309 Post(s)
    Sollte gehen und einen 2D-Array liefern. Der alte Kampf zwischen den Befürwortern von
    String s[][];
    und
    String[][] s;
    Spätestens in C mit Pointer kann man da rieeesen Spaß haben

  10. #48
    Global Moderator Viertel Gigabyte
    Registriert seit
    05.08.2008
    Fachbeiträge
    4.913
    Genannt
    309 Post(s)
    Ich geh' mal (ungetestet) davon aus, dass das stimmte

    Die Frage ist ein bißchen gemein: Sie hat nichts mit Java an sich zu tun, und ich hätte bei der Antwort wohl auch nur händewedelnd rumraten können. Aber mal schauen, ob das "richtige" Stichwort fällt:

    Das folgende Programm erstellt zwei Arrays mit zufälligen Zahlen zwischen 0 und 256. Die Elemente des Arrays aufsummiert, wenn sie nicht kleiner als 128 sind (die mit !!! markierte Schleife). Wenn man das Array vor dem Aufsummieren sortiert, läuft das ganze wesentlich schneller. Warum?
    Java Code:
    1.  
    2. import java.util.Arrays;
    3. import java.util.Random;
    4.  
    5. public class SortedArraySumSpeed
    6. {
    7.     public static void main(String[] args)
    8.     {
    9.         for (int size = 1<<15; size<= 1<<17; size<<=1)
    10.         {
    11.             runTest(size);
    12.         }
    13.     }
    14.  
    15.     private static int[] generate(int size)
    16.     {
    17.         int data[] = new int[size];
    18.         Random random = new Random(0);
    19.         for (int i=0; i<size; i++)
    20.         {
    21.             data[i] = random.nextInt() % 256;
    22.         }
    23.         return data;
    24.     }
    25.    
    26.     private static void runTest(int size)
    27.     {
    28.         int data0[] = generate(size);
    29.         int data1[] = generate(size);
    30.         Arrays.sort(data1);
    31.        
    32.         for (int i=0; i<3; i++)
    33.         {
    34.             runTest(data0, "Normal");
    35.             runTest(data1, "Sorted");
    36.         }
    37.     }
    38.    
    39.     private static void runTest(int data[], String type)
    40.     {
    41.         long before = System.nanoTime();
    42.         long sum = 0;
    43.         for (int j=0; j<10000; j++)
    44.         {
    45.             for (int i=0; i<data.length; i++) // ------------------ !!!
    46.             {
    47.                 if (data[i] >= 128)
    48.                 {
    49.                     sum += data[i];
    50.                 }
    51.             }
    52.         }
    53.         long after = System.nanoTime();
    54.         System.out.println(type+" size "+data.length+" sum "+sum+" time "+(after-before)/1e6);
    55.     }
    56.    
    57. }

  11. #49
    Frequent User Kilobyte Avatar von Dow_Jones
    Registriert seit
    30.07.2013
    Fachbeiträge
    121
    Genannt
    19 Post(s)
    Ist jetzt auch nur geraten, aber möglicherweise macht sich hier eine Branch Prediction bemerkbar?

  12. #50
    User int Avatar von Antoras
    Registriert seit
    09.04.2009
    Fachbeiträge
    52
    Genannt
    2 Post(s)
    Zitat Zitat von Marco13 Beitrag anzeigen
    ...
    Die Frage hat es doch bei StackOverflow ganz nach oben geschafft...

  13. #51
    Global Moderator Viertel Gigabyte
    Registriert seit
    05.08.2008
    Fachbeiträge
    4.913
    Genannt
    309 Post(s)
    Jupp, da stammt die auch her: http://stackoverflow.com/questions/1...unsorted-array (mit leichten Micro-Benchmark-üblichen Anpassungen).

    Gerechnet hätte ich mit einem SO deutlichen Unterschied aber nicht.

  14. #52
    Frequent User Megabyte
    Registriert seit
    01.08.2013
    Fachbeiträge
    1.723
    Genannt
    111 Post(s)
    *Danke drück* - wieder was gelernt. Der Hinweis auf SO auf die Intel-Optimierung hat mich zum Lachen gebracht. Einfach genial.

  15. #53
    Global Moderator Floppy Disc Themenstarter
    Avatar von Landei
    Registriert seit
    31.07.2013
    Ort
    Sandersdorf-Brehna
    Fachbeiträge
    991
    Genannt
    164 Post(s)
    Blog-Einträge
    27
    Ich hätte noch was:

    Java Code:
    1.  
    2. public class Foo {
    3.     public static System s = null;
    4.  
    5.     public static void main(String... args) {
    6.         s.out.println("Foo");
    7.     }
    8. }

    Funktioniert das oder nicht?

  16. #54
    User Kilobyte Avatar von Akeshihiro
    Registriert seit
    01.08.2013
    Fachbeiträge
    220
    Genannt
    8 Post(s)
    Es sieht zwar nach einer NPE aus, aber es funktioniert trotzdem, wenn der Zugriff auf statische Elemente der Klasse des vermeindlichen Null-Objektes (naja, eine Instanz gibt es ja genau genommen nicht, daher eigentlich Null-Variable) stattfindet.

  17. #55
    Global Moderator Floppy Disc Themenstarter
    Avatar von Landei
    Registriert seit
    31.07.2013
    Ort
    Sandersdorf-Brehna
    Fachbeiträge
    991
    Genannt
    164 Post(s)
    Blog-Einträge
    27
    Richtig!

    Oh, und als Betthupferl:
    Java Code:
    1.  
    2. //Version 1
    3. String s = (Math.random() > 0.5 ? new StringBuilder("Hi ") : new StringBuffer("Hello ")).append(" world!").toString();
    4. System.out.println(s);
    5.  
    6. //Version 2
    7. Appendable app = (Math.random() > 0.5 ? new StringBuilder("Hi ") : new StringBuffer("Hello ")).append(" world!");
    8. System.out.println(app.toString());

    Funktionieren beide Versionen?

  18. #56
    Global Moderator Viertel Gigabyte
    Registriert seit
    05.08.2008
    Fachbeiträge
    4.913
    Genannt
    309 Post(s)
    Interessant (Habe gerade mal probiert, ob man ihn da mit einem "Diamant aus Interfaces" oder Generics irgendwie raushauen kann, aber auf die schnelle nix dergleichen hingekriegt....)

  19. #57
    Frequent User Kilobyte Avatar von Gonzo
    Registriert seit
    31.07.2013
    Fachbeiträge
    209
    Genannt
    15 Post(s)
    Ahahahaha ist das hart, ich hab 5 Minuten gebraucht beim Hinschauen um zu verstehen wo das Problem lag.

    Zitat Zitat von Akeshihiro Beitrag anzeigen
    Es sieht zwar nach einer NPE aus, aber es funktioniert trotzdem, wenn der Zugriff auf statische Elemente der Klasse des vermeindlichen Null-Objektes (naja, eine Instanz gibt es ja genau genommen nicht, daher eigentlich Null-Variable) stattfindet.
    Ich hatte (vielleicht auch wegen der Uhrzeit) erst Probleme deinen Worten zu folgen, deswegen nochmal in meinen eigenen, um sicher zu gehen, dass ich das richtig verstehe. Da Zugriffe auf statische Variablen einer Klasse ohnehin unabhängig von der einer Instanz sind, ist es hier egal was mit der Variable vorher passiert.

  20. #58
    Global Moderator Viertel Gigabyte
    Registriert seit
    05.08.2008
    Fachbeiträge
    4.913
    Genannt
    309 Post(s)
    Zitat Zitat von Gonzo Beitrag anzeigen
    Ahahahaha ist das hart, ich hab 5 Minuten gebraucht beim Hinschauen um zu verstehen wo das Problem lag.
    Öhm... willst du behaupten, dass du durch draufschauen erkannt hast, was da die Fehlerursache ist!?

  21. #59
    Frequent User Kilobyte Avatar von Gonzo
    Registriert seit
    31.07.2013
    Fachbeiträge
    209
    Genannt
    15 Post(s)
    Zitat Zitat von Marco13 Beitrag anzeigen
    Öhm... willst du behaupten, dass du durch draufschauen erkannt hast, was da die Fehlerursache ist!?
    Ja, mit Hilfe von Eclipse und der Fehlermeldung hab ichs dann verstanden. Aber ob ich es dir auch verraten soll?

  22. #60
    User Kilobyte Avatar von Akeshihiro
    Registriert seit
    01.08.2013
    Fachbeiträge
    220
    Genannt
    8 Post(s)
    @Gonzo Ja, hast richtig verstanden

+ Antworten Thema als "gelöst" markieren
Seite 3 von 20 ErsteErste 1 2 3 4 5 6 13 ... LetzteLetzte

Direkt antworten Direkt antworten

Nenne einen der beiden magnetischen Pole der Erde!

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Ähnliche Themen

  1. Antworten: 1
    Letzter Beitrag: 01.11.2009, 01:09
  2. Antworten: 0
    Letzter Beitrag: 05.01.2009, 17:21
  3. [Erledigt] Quiz grafisch umsetzen.
    Von swerflash im Forum AWT, Swing, JavaFX & SWT
    Antworten: 6
    Letzter Beitrag: 19.12.2006, 18:29

Berechtigungen

  • Neue Themen erstellen: Ja
  • Themen beantworten: Ja
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •