Hallo
Hab ein problem bei binärer suche
das programm findet entweder die zahl oder stürzt ab (auch wenn sie vorhanden ist)
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20:
| function tSearchnSort.binaerSearch(searchValue: longint): boolean; var l,r,m: longint; begin l:=1; r:=n; m:= (l+r) div 2;
while (l<=r) and (searchValue<>self.SnsArray[m]) do begin if self.SnsArray[n]<searchValue then l:=m+1 else r:=m-1;
m:=(l+r) div 2; end; if searchValue=self.SnsArray[m] then result:=true else result:=false
end; |