Midterm Review - CS61B
-
Upload
anonymous-n8v9qkfwjv -
Category
Documents
-
view
217 -
download
0
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+