[Java] brauche beispiel für binarySearch

Diskutiere das Thema [Java] brauche beispiel für binarySearch im Forum Mac OS Entwickler, Programmierer

  1. fLaSh84

    fLaSh84 Thread Starter Mitglied

    Beiträge:
    1.549
    Zustimmungen:
    17
    Mitglied seit:
    25.07.2004
    Hallo!

    sitz grad mal wieders fürs studium über nem java programm (med. informatik - 1. semester - blutiger java anfänger)

    muss hier eine suche implementieren. da nicht vorgeschrieben ist ob wir nen eigenen algorithmus schreiben sollen oder nicht nehm ich einfach den der bei java mit dabei ist.
    mein problem ist einfach nur wie ichs ordentlich einbaue. man findet im netz und in büchern nur so allgemeine sachen wie
    Code:
    binarySearch(List list, Object key) bzw.
    binarySearch(List list, Object key, Comparator c)
    ich suche jetzt einfach nur mal nen beispielprogramm wo genau sowas implementiert ist, da ich aus dieser allgemeinen beshcreibung nicht schlau werde

    danke
     
  2. snehls

    snehls Mitglied

    Beiträge:
    36
    Zustimmungen:
    0
    Mitglied seit:
    31.08.2004
    gehts dir um die Idee oder um Code ? Hier ist ein Stück Code das auf Integer-Arrays arbeitet, das Prinzip ist ja recht simpel und leicht verständlich (trotz des häßlichen Codes).

    Code:
    int BinSearch (int[] array, int key) 
    { 
      int u = 0, o = array.length ;
      while (u < o) { 
        int m = (u + o) / 2; 
        if (key == array[m] ) return m; 
        else if (key < array[m] ) o = m-1; 
        else u = m+1;
        }
    return NO_KEY;
    }
    Die Methoden die du nanntest arbeiten halt nicht auf nem Array sondern auf ner Liste und statt auf Integers auf beliebigen Objekten .....
     
  3. fLaSh84

    fLaSh84 Thread Starter Mitglied

    Beiträge:
    1.549
    Zustimmungen:
    17
    Mitglied seit:
    25.07.2004
    sowas meinte ich nicht. hab selbst nen skript aus der A&D Vorlesung hier liegen, da stehen die algorithmen schon drin.
    ich will aber den bei java mitgelieferten (im paket java.util - Klasse Collections) nutzen. und um dessen implementierung gehts mir, einfach nur eine beispielklasse / -programm wo genau der binarySearch(List list, Object key) verwendet wird
     
  4. Sym

    Sym Mitglied

    Beiträge:
    1.957
    Zustimmungen:
    49
    Mitglied seit:
    11.06.2003
    Hi,

    was ist das Problem? Hast Du Dir schon mal die API verinnerlicht?
    Code:
    int Collections.binarySearch(List list, Object o)
    erwartet eine Liste und das entsprechende Objekt, dass Du in der Liste suchst. Zurückgegeben wird der Index, an dem das Objekt ggf. zu finden ist.

    Z.B. so müsste das klappen (nicht getestet)
    Code:
    import java.util.ArrayList;
    
    public class Test {
        public static void main(String[] args) {
            ArrayList list = new ArrayList();
            String s1 = "bla";
            String s2 = "blub";
    
            list.add(s1);
            list.add(s2);
    
            System.out.println(java.util.Collections.binarySearch(list, s2);
    
        }
    }
    Have fun.
     
Die Seite wird geladen...
  1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Akzeptieren Weitere Informationen...