Hallgrim2LF : Hva Hva skal metoden traverser gjøre? Ta inn et rom som parameter Returnere antall møter i dette rommet og i alle rom innenfor. Public static int traverser(Rom startRom) { int antMøter = startRom.moter(); Return antMoter;// Hva returnerer traverser nå? }
Hallgrim2LF : Hule Kan en dele hule i subproblem?
Hallgrim2LF : Hule Kan en dele hule i subproblem?
Hallgrim2LF : Hule Hva vil traversere() returnere dersom den blir kjørt på nodene med 13, 0, 1 møte?
Hallgrim2LF : Hule Hva vil traversere() returnere dersom den blir kjørt på nodene med 13, 0, 1 møte? 13 vil returnere 40 0 vil returnere 0 1 vil returnere
Hallgrim2LF : Hule Hvordan kan vi utnytte dette?
Hallgrim2LF : Hule Hvordan kan vi utnytte dette? Hva vil svaret til hele treet bli?
Hallgrim2LF : Hule Hvordan kan vi utnytte dette? Hva vil svaret til hele treet bli? StartRom = 3 SubProb1 = 40 SubProb2 = 0 SubProb3 = 8 Hele treet =
Hallgrim2LF : Hule Hvordan kan vi skrive dette i java?
Hallgrim2LF : Hule Hvordan kan vi skrive dette i java? Rekursivt metodekall Addering av subproblem
Hallgrim2LF : Kode Public static int traverser(Rom startRom) { int antMoter = startRom.moter(); // init startRom Rom[] innenfor = startRom.gangVidere(); // legger til antall møter i rommene som ligg i gangen videre for (int i=0; i<innenfor.length; i++) { antMoter += traverser( innnenfor[ i ] ); // (adderer subproblem) } return antMoter; }