Kezdőoldal » Számítástechnika » Programozás » Java rekurzív bináris keresőst...

Java rekurzív bináris keresőstratégia ciklus nélkül?

Figyelt kérdés

Tudnátok segíteni ebben a feladatban, hogy hogyan kezdjem el?

Az a feladat, hogy van egy csökkenő sorrendben rendezett tömbünk és ebben meg kell keresni egy számot, illetve azt is megadjuk, hogy a tömb hányadik elemétől hányadik eleméig keressen

Ezzel a metódussal kell:

public static int binSearchRec(int x, int[] fallen, int from, int to)


-x: A keresett szam

-fallen: Különböző egész számokat tartalmazó csökkenőbe rendezett tömb

-from: A tömb vizsgálandó szakaszának kezdőindexe ( from >= 0 )

-to: A tömb vizsgálandó szakaszának záróindexe ( to < fallen.length )


Példák:

input1: binSearchRec(100, new int[]{100, 71, 30, 21}, 0, 3) -> output1: 1

input2: binSearchRec(21, new int[]{3089, 1071, 568, 123, 21}, 0, 4) -> output2: 5

input3: binSearchRec(55, new int[]{89, 71, 68, 14, 11, 10, 2}, 0, 6) -> output3: 0

input4: binSearchRec(55, new int[]{89, 55, 53, 14, 11, 10, 2}, 0, 6) -> output4: 2

input5: binSearchRec(70, new int[]{90, 80, 70, 60, 50, 40, 30}, 2, 2) -> output5: 3

input6: binSearchRec(70, new int[]{90, 80, 70, 60, 50, 40, 30}, 3, 6) -> output6: 0



2018. szept. 22. 11:20
 1/2 anonim ***** válasza:
A tólig-et tudod felhasználni rekurzióra, de elég erőltetett feladat, hogy őszinte legyek.
2018. szept. 22. 11:31
Hasznos számodra ez a válasz?
 2/2 anonim ***** válasza:

if(from > to)

    return 0;


int median = (from + to) /2;

if(fallen[median] > x)

    return binSearchRec(x, fallen, median, to);

else if(fallen[median] < x)

    return binSearchRec(x, fallen, from, median);

else //fallen[median] == x

    return median+1; //Results are 1-indexed


Kb így. Bear in mind, ez cska egy általános pszeudokód féleség, ami bemutatja a logikát, és nem garantálom, hogy ez így ebbena formában le is fordul.

2018. szept. 22. 12:23
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!