Midterm Review - CS61B

download Midterm Review - CS61B

of 23

Transcript of Midterm Review - CS61B

  • 8/17/2019 Midterm Review - CS61B

    1/23

    CS61B Midterm Review

    Winston Liaw and Amir Kamil

  • 8/17/2019 Midterm Review - CS61B

    2/23

      Midterm Review 2

    Agenda1. Static vs. Dynamic

    2. Bo and !ointer diagrams

    ". Code #$estions and eam!les

    %. Bit re!resentation

    &. Algorit'mic Analysis6. Access rig'ts

    (. #$ic)ie *$estions

  • 8/17/2019 Midterm Review - CS61B

    3/23

      Midterm Review 3

    Static vs. Dynamic W'at 'a!!ens+ Ass$me we 'ave

    de,ned-omer ' / new omer0

    Bart 3 / new Bart0

    omer '1 / 3'1.tal)20

    Answer- omer4 Bart-d$de

  • 8/17/2019 Midterm Review - CS61B

    4/23

      Midterm Review 4

    Static vs. Dynamic cont. W'at 'a!!ens+ Ass$me t'e same

    de,nitions

    Bart 31 / 3

    31.tal)20

    Cartoon c1 / '

    00omerc1.tal)%0

    Answer- omer4 Bart-d$de

    Answer- omer4 omer- do'5

  • 8/17/2019 Midterm Review - CS61B

    5/23

      Midterm Review 5

    Static vs. Dynamic cont. W'at 'a!!ens+

    Cartoon c2 / 3

    00Bartc2.w'oa0

    L$m!y l2 / 3

    00omerl2.tal)%0

    Answer- d$de

    Answer- Bart-

    d$de

  • 8/17/2019 Midterm Review - CS61B

    6/23

      Midterm Review 6

    Static vs. Dynamic cont. or calls wit' an o37ect o8 interest

    0i.e. '.804 static met'ods are called

    3ased on static ty!e4 non9staticmet'ods are 3ased on dynamic ty!e

    or calls involving :t'is;4 t'ings get

    a little tric)ier. Static calls :stay; int'e same class4 dynamic calls are3ased on t'e dynamic set.

  • 8/17/2019 Midterm Review - CS61B

    7/23  Midterm Review 7

    Bo and

  • 8/17/2019 Midterm Review - CS61B

    8/23  Midterm Review 8

    Bo and

  • 8/17/2019 Midterm Review - CS61B

    9/23  Midterm Review 9

    Bo and / @=2>

  • 8/17/2019 Midterm Review - CS61B

    10/23  Midterm Review 10

    Bo and / @=2>

    ? ?

    ? ?

    ? ?

    @

  • 8/17/2019 Midterm Review - CS61B

    11/23

      Midterm Review 11

    Coding #$estion inis' t'is met'od-

    iven an ntList4 it will reverse itdestr$ctively and ret$rn t'e new list

    !$3lic ntList reverse0ntList l E

    F

    G

  • 8/17/2019 Midterm Review - CS61B

    12/23

      Midterm Review 12

    Coding #$estion Sol$tion!$3lic ntList reverse0ntList l E

    ntList !rev / n$ll

    ntList net / l.tail

    w'ile 0l 5/ n$ll Enet / l.tail

    l.tail / !rev

    !rev / l

    l / net

    Gret$rn !rev once we are done reversing all t'e !ointers

    we need to set lHs 'ead to t'e new 'ead

    G

  • 8/17/2019 Midterm Review - CS61B

    13/23

      Midterm Review 13

    Bit Re!resentation W'at is t'e 3it re!resentation 8or-

    3yte 3 / 1&

    W'at is t'is val$e as a c'ar+

    1?11?111

    W'at a3o$t as a 3yte+

    Answer- ????1111

    Answer- 1I"

    Answer- 9("

  • 8/17/2019 Midterm Review - CS61B

    14/23

      Midterm Review 14

    Bit Re!resentation Jwos com!lement

    8 t'e Most Signi,cant Bit 0MSB is ?4

    t'en treat t'e remaining 3its as normal0as a !ositive n$m3er. 8 t'e MSB is 14 i! t'e remaining 3its4

    add 14 and t'at is yo$r negative val$e.

    Remem3er4 twos com!lement onlya!!lies to signed val$es. or an$nsigned integer4 8or instance4 treat itas :normal.;

  • 8/17/2019 Midterm Review - CS61B

    15/23

      Midterm Review 15

    Mod$lar Arit'metic or mod$lar arit'metic-

    ind o$t 'ow many times yo$r divisor can

    divide into yo$r dividend. Remem3er4 t'eremainder m$st 3e !ositive

    8 t'e remainder is greater t'an t'e rangeo8 yo$r val$es 03yte can 'ave val$es 3tw

    12I and 12( 8or instance t'en loo!val$e aro$nd

  • 8/17/2019 Midterm Review - CS61B

    16/23

      Midterm Review 16

    Anot'er Coding #$estion inis' t'ese met'ods-

     ntList !*$e$e

      removes t'e node wit' smallest val$e

     !$3lic int remove0 E

    F

    G

    inserts t'e val$e into !*$e$e

    !$3lic void insert0int ) E

    F

    G

  • 8/17/2019 Midterm Review - CS61B

    17/23

      Midterm Review 17

    Anot'er Coding #$estion

    Sol$tion 

    !$3lic int remove0 E

    int / !*$e$e.'ead

    !*$e$e / !*$e$e.tail

    ret$rn

    G

  • 8/17/2019 Midterm Review - CS61B

    18/23

      Midterm Review 18

    Anot'er Coding #$estion

    Sol$tion cont.!$3lic void insert0int ) E

    ntList tem! / !*$e$e

    ntList !rev / n$ll

    w'ile 0tem! 5/ n$ll E

    i8 0) N tem!.'ead E  i8 0!rev 5/ n$ll E

      !rev.tail / new ntList0)4 tem!

      G else E

      !*$e$e / new ntList0)4 !*$e$e

      G

      ret$rn

      G else E

      !rev / tem!

      tem! / tem!.tail

    G

    G

  • 8/17/2019 Midterm Review - CS61B

    19/23

      Midterm Review 19

    Algorit'mic Analysis De,nition o8 Big9O'

    O0g0n / E80n - t'ere eist !ositive

    constants c and n? s$c' t'at? N/ 80n N/ cg0n 8or all n P/ n?

    De,nition o8 Big9Omega Ω0g0n / E80n - t'ere eist !ositive

    constants c and n? s$c' t'at

    ? N/ cg0n N/ 80n 8or all n P/ n?

  • 8/17/2019 Midterm Review - CS61B

    20/23

      Midterm Review 20

    Algorit'mic Analysis One met'od ta)es O0n24 w'ile

    anot'er ta)es O0n lg0n. J'e O0n

    lg0n met'od is always !re8erred.

     Jr$e or 8alse+

  • 8/17/2019 Midterm Review - CS61B

    21/23

      Midterm Review 21

    Algorit'mic Analysis W'at are t'e r$nning times 0Big9O'4

    Big9Omega4 Big9J'eta 8or t'is code+

    8or 0int i / ) i N @ iQQ E

    8or 0int 7 / ? 7 N @ 7QQ E

    some lg 0n code 'ereG

    GAnswer- all are 0@9)0@lg0n

  • 8/17/2019 Midterm Review - CS61B

    22/23

      Midterm Review 22

    Access rig'ts 8 yo$ override a met'od in a c'ild class4

     ava allows yo$ to c'ange t'e access

    rig'ts to 3e less restrictive

    .

  • 8/17/2019 Midterm Review - CS61B

    23/23

    Midterm Review 23

    #$ic)ies W'at class 'as no s$!erclass+

    W'y wo$ld yo$ want to !ic) anarray over a list+