2 | using namespace std;
3 | extern "C" int max(int x, int y);
4 |
5 | int max(int x, int y) {
6 | int theMax;
7 | if (x > y) // if x > y then x is max
8 | theMax = x;
9 | else // else y is the max
10 | theMax = y;
11 | return theMax; // return the max
12 | }
13 |
14 | int main() {
15 | int theValue1=0, theValue2=0;
16 | cout << "Enter value 1: " << endl;
17 | cin >> theValue1;
18 | cout << "Enter value 2: " << endl;
19 | cin >> theValue2;
20 | int theResult = max(theValue1, theValue2);
21 | cout << "The result is: " << theResult << endl;
22 | return 0;
23 | }
24 |
--------------------------------------------------------------------------------
/slides/graphs/.gitignore:
--------------------------------------------------------------------------------
1 | *.png
2 | *.ps
3 |
--------------------------------------------------------------------------------
/slides/graphs/avl-tree-19.dot:
--------------------------------------------------------------------------------
1 | digraph G {
2 | graph [fontname = "Helvetica"];
3 | node [fontname = "Helvetica",shape=circle];
4 | edge [fontname = "Helvetica"];
5 |
6 | 3 [label="3\nb:0",fontcolor=red];
7 | 2 [label="2\nb:0",fontcolor=green];
8 | 1 [label="1\nb:0",fontcolor=blue];
9 |
10 | 3 [color=red];
11 | 2 [color=green];
12 | 1 [color=blue];
13 |
14 | 2 -> 1;
15 | m2 [label="", width=0.1, style=invis];
16 | 2 -> m2 [style=invis];
17 | 2 -> 3;
18 | {rank=same 1 -> m2 -> 3 [style=invis]};
19 | }
20 |
--------------------------------------------------------------------------------
/slides/graphs/avl-tree-21.dot:
--------------------------------------------------------------------------------
1 | digraph G {
2 | graph [fontname = "Helvetica"];
3 | node [fontname = "Helvetica",shape=circle];
4 | edge [fontname = "Helvetica"];
5 |
6 | 3 [label="3\nb:-2",width=0.8];
7 | 2 [label="2\nb:-1",width=0.8];
8 | 1 [label="1\nb: 0",width=0.8];
9 |
10 | 3 -> 2;
11 | m3 [label="", width=0.1, style=invis];
12 | 3 -> m3 [style=invis];
13 | r3 [label="", width=0.1, style=invis];
14 | 3 -> r3 [style=invis];
15 | {rank=same 2 -> m3 -> r3 [style=invis]};
16 |
17 | 2 -> 1;
18 | l2 [label="", width=0.1, style=invis];
19 | 2 -> l2 [style=invis];
20 | r2 [label="", width=0.1, style=invis];
21 | 2 -> r2 [style=invis];
22 | {rank=same 1 -> l2 -> r2 [style=invis]};
23 | }
24 |
--------------------------------------------------------------------------------
/slides/graphs/avl-tree-22.dot:
--------------------------------------------------------------------------------
1 | digraph G {
2 | graph [fontname = "Helvetica"];
3 | node [fontname = "Helvetica",shape=circle];
4 | edge [fontname = "Helvetica"];
5 |
6 | 3 [label="3\nb: 0",width=0.8];
7 | 2 [label="2\nb:+1",width=0.8];
8 | 1 [label="1\nb:+2",width=0.8];
9 |
10 | l1 [label="", width=0.1, style=invis];
11 | 1 -> l1 [style=invis];
12 | m1 [label="", width=0.1, style=invis];
13 | 1 -> m1 [style=invis];
14 | 1 -> 2;
15 | {rank=same l1 -> m1 -> 2 [style=invis]};
16 |
17 | l2 [label="", width=0.1, style=invis];
18 | 2 -> l2 [style=invis];
19 | m2 [label="", width=0.1, style=invis];
20 | 2 -> m2 [style=invis];
21 | 2 -> 3;
22 | {rank=same l2 -> m2 -> 3 [style=invis]};
23 | }
24 |
--------------------------------------------------------------------------------
/slides/graphs/avl-tree-23.dot:
--------------------------------------------------------------------------------
1 | digraph G {
2 | graph [fontname = "Helvetica"];
3 | node [fontname = "Helvetica",shape=circle];
4 | edge [fontname = "Helvetica"];
5 |
6 | 3 [label="3\nb:-2",width=0.8];
7 | 2 [label="2\nb: 0",width=0.8];
8 | 1 [label="1\nb:+1",width=0.8];
9 |
10 | 3 -> 1;
11 | m3 [label="", width=0.1, style=invis];
12 | 3 -> m3 [style=invis];
13 | r3 [label="", width=0.1, style=invis];
14 | 3 -> r3 [style=invis];
15 | {rank=same 1 -> m3 -> r3 [style=invis]};
16 |
17 | l1 [label="", width=0.1, style=invis];
18 | 1 -> l1 [style=invis];
19 | m1 [label="", width=0.1, style=invis];
20 | 1 -> m1 [style=invis];
21 | 1 -> 2;
22 | {rank=same l1 -> m1 -> 2 [style=invis]};
23 | }
24 |
--------------------------------------------------------------------------------
/slides/graphs/avl-tree-24.dot:
--------------------------------------------------------------------------------
1 | digraph G {
2 | graph [fontname = "Helvetica"];
3 | node [fontname = "Helvetica",shape=circle];
4 | edge [fontname = "Helvetica"];
5 |
6 | 3 [label="3\nb:-1",width=0.8];
7 | 2 [label="2\nb: 0",width=0.8];
8 | 1 [label="1\nb:+2",width=0.8];
9 |
10 | l1 [label="", width=0.1, style=invis];
11 | 1 -> l1 [style=invis];
12 | m1 [label="", width=0.1, style=invis];
13 | 1 -> m1 [style=invis];
14 | 1 -> 3;
15 | {rank=same l1 -> m1 -> 3 [style=invis]};
16 |
17 | 3 -> 2;
18 | m3 [label="", width=0.1, style=invis];
19 | 3 -> m3 [style=invis];
20 | r3 [label="", width=0.1, style=invis];
21 | 3 -> r3 [style=invis];
22 | {rank=same 2 -> m3 -> r3 [style=invis]};
23 | }
24 |
--------------------------------------------------------------------------------
/slides/graphs/avl-tree-6.dot:
--------------------------------------------------------------------------------
1 | digraph G {
2 | graph [fontname = "Helvetica"];
3 | node [fontname = "Helvetica",shape=circle];
4 | edge [fontname = "Helvetica"];
5 |
6 | X [shape=triangle,label="X\n(h+1)",height=2];
7 | Y [shape=triangle,label="Y\n(h)",height=1];
8 | Z [shape=triangle,label="Z\n(h)",height=1];
9 |
10 | a -> b;
11 | ma [label="", width=0.1, style=invis];
12 | a -> ma [style=invis];
13 | a -> Z:n;
14 | {rank=same b -> ma -> Z [style=invis]};
15 |
16 | b -> X:n;
17 | mb [label="", width=0.1, style=invis];
18 | b -> mb [style=invis];
19 | b -> Y:n;
20 | {rank=same X -> mb -> Y [style=invis]};
21 | }
22 |
--------------------------------------------------------------------------------
/slides/graphs/avl-tree-7.dot:
--------------------------------------------------------------------------------
1 | digraph G {
2 | graph [fontname = "Helvetica"];
3 | node [fontname = "Helvetica",shape=circle];
4 | edge [fontname = "Helvetica"];
5 |
6 | X [shape=triangle,label="X\n(h+1)",height=2];
7 | Y [shape=triangle,label="Y\n(h)",height=1];
8 | Z [shape=triangle,label="Z\n(h)",height=1];
9 |
10 | b -> X:n;
11 | mb [label="", width=0.1, style=invis];
12 | b -> mb [style=invis];
13 | b -> a;
14 | {rank=same X -> mb -> a [style=invis]};
15 |
16 | a -> Y:n;
17 | ma [label="", width=0.1, style=invis];
18 | a -> ma [style=invis];
19 | a -> Z:n;
20 | {rank=same Y -> ma -> Z [style=invis]};
21 | }
22 |
--------------------------------------------------------------------------------
/slides/graphs/avl-tree-8.dot:
--------------------------------------------------------------------------------
1 | digraph G {
2 | graph [fontname = "Helvetica"];
3 | node [fontname = "Helvetica",shape=circle];
4 | edge [fontname = "Helvetica"];
5 |
6 | X [shape=triangle,label="X\n(h)",height=1];
7 | Y [shape=triangle,label="Y\n(h+1)",height=2];
8 | Z [shape=triangle,label="Z\n(h)",height=1];
9 |
10 | a -> b;
11 | ma [label="", width=0.1, style=invis];
12 | a -> ma [style=invis];
13 | a -> Z:n;
14 | {rank=same b -> ma -> Z [style=invis]};
15 |
16 | b -> X:n;
17 | mb [label="", width=0.1, style=invis];
18 | b -> mb [style=invis];
19 | b -> Y:n;
20 | {rank=same X -> mb -> Y [style=invis]};
21 | }
22 |
--------------------------------------------------------------------------------
/slides/graphs/avl-tree-9.dot:
--------------------------------------------------------------------------------
1 | digraph G {
2 | graph [fontname = "Helvetica"];
3 | node [fontname = "Helvetica",shape=circle];
4 | edge [fontname = "Helvetica"];
5 |
6 | X [shape=triangle,label="X\n(h)",height=1];
7 | Y [shape=triangle,label="Y\n(h+1)",height=2];
8 | Z [shape=triangle,label="Z\n(h)",height=1];
9 |
10 | b -> X:n;
11 | mb [label="", width=0.1, style=invis];
12 | b -> mb [style=invis];
13 | b -> a;
14 | {rank=same X -> mb -> a [style=invis]};
15 |
16 | a -> Y:n;
17 | ma [label="", width=0.1, style=invis];
18 | a -> ma [style=invis];
19 | a -> Z:n;
20 | {rank=same Y -> ma -> Z [style=invis]};
21 | }
22 |
--------------------------------------------------------------------------------
/slides/graphs/bst-3.dot:
--------------------------------------------------------------------------------
1 | digraph G {
2 | graph [fontname = "Helvetica"];
3 | node [fontname = "Helvetica",shape=circle];
4 | edge [fontname = "Helvetica"];
5 |
6 | 1 -> 2;
7 | m1 [label="", width=0.1, style=invis];
8 | 1 -> m1 [style=invis];
9 | 1 -> 3;
10 | {rank=same 2 -> m1 -> 3 [style=invis]};
11 |
12 | 2 -> 4;
13 | m2 [label="", width=0.1, style=invis];
14 | 2 -> m2 [style=invis];
15 | 2 -> 5;
16 | {rank=same 4 -> m2 -> 5 [style=invis]};
17 |
18 | 3 -> 6;
19 | m3 [label="", width=0.1, style=invis];
20 | 3 -> m3 [style=invis];
21 | 3 -> 7;
22 | {rank=same 6 -> m3 -> 7 [style=invis]};
23 | }
24 |
--------------------------------------------------------------------------------
/slides/graphs/c-string-1.dot:
--------------------------------------------------------------------------------
1 | digraph G {
2 | node [fontname="Helvetica"];
3 | ptr [label="<0>",xlabel="str:",shape=record];
4 | stack [shape=record,label="<0>h|e|l|l|o||w|o|r|l|d|\\0"];
5 | ptr:0:c -> stack:0 [tailclip=false];
6 | }
7 |
--------------------------------------------------------------------------------
/slides/graphs/c-string-2.dot:
--------------------------------------------------------------------------------
1 | digraph G {
2 | node [fontname="Helvetica"];
3 | ptr [label="<0>0xfd21a8ce",xlabel="str:",shape=record];
4 | stack [shape=record,label="<0>0x68|0x65|0x6c|0x6c|0x6f|0x20|0x77|0x6f|0x72|0x6c|0x64|0x00",xlabel="0xfd21a8ce:"];
5 | ptr:0:c -> stack:0 [tailclip=false,style=invis];
6 | }
7 |
--------------------------------------------------------------------------------
/slides/graphs/exp-tree-ex-1.dot:
--------------------------------------------------------------------------------
1 | digraph G {
2 | node [fontname="Helvetica",shape=circle];
3 |
4 | stack [shape=record,label="<0>|<1>|<2>|<3>|<4>"];
5 |
6 | stack:0:c -> a [tailclip=false];
7 | }
8 |
--------------------------------------------------------------------------------
/slides/graphs/exp-tree-ex-2.dot:
--------------------------------------------------------------------------------
1 | digraph G {
2 | node [fontname="Helvetica",shape=circle];
3 |
4 | stack [shape=record,label="<0>|<1>|<2>|<3>|<4>"];
5 |
6 | stack:0:c -> a [tailclip=false];
7 | stack:1:c -> b [tailclip=false];
8 | }
9 |
--------------------------------------------------------------------------------
/slides/graphs/exp-tree-ex-3.dot:
--------------------------------------------------------------------------------
1 | digraph G {
2 | node [fontname="Helvetica",shape=circle];
3 |
4 | stack [shape=record,label="<0>|<1>|<2>|<3>|<4>"];
5 | plus1 [label="+"];
6 | hidden1 [label="",style=invis];
7 |
8 | stack:0:c -> plus1 [tailclip=false];
9 |
10 | plus1 -> a;
11 | plus1 -> hidden1 [style=invis];
12 | plus1 -> b;
13 | {rank=same a -> hidden1 -> b [style=invis]};
14 | }
15 |
--------------------------------------------------------------------------------
/slides/graphs/exp-tree-ex-4.dot:
--------------------------------------------------------------------------------
1 | digraph G {
2 | node [fontname="Helvetica",shape=circle];
3 |
4 | stack [shape=record,label="<0>|<1>|<2>|<3>|<4>"];
5 | plus1 [label="+"];
6 | hidden1 [label="",style=invis];
7 |
8 | stack:0:c -> plus1 [tailclip=false];
9 | stack:1:c -> c [tailclip=false];
10 |
11 | plus1 -> a;
12 | plus1 -> hidden1 [style=invis];
13 | plus1 -> b;
14 | {rank=same a -> hidden1 -> b [style=invis]};
15 | }
16 |
--------------------------------------------------------------------------------
/slides/graphs/exp-tree-ex-5.dot:
--------------------------------------------------------------------------------
1 | digraph G {
2 | node [fontname="Helvetica",shape=circle];
3 |
4 | stack [shape=record,label="<0>|<1>|<2>|<3>|<4>"];
5 | plus1 [label="+"];
6 | hidden1 [label="",style=invis];
7 |
8 | stack:0:c -> plus1 [tailclip=false];
9 | stack:1:c -> c [tailclip=false];
10 | stack:2:c -> d [tailclip=false];
11 |
12 | plus1 -> a;
13 | plus1 -> hidden1 [style=invis];
14 | plus1 -> b;
15 | {rank=same a -> hidden1 -> b [style=invis]};
16 | }
17 |
--------------------------------------------------------------------------------
/slides/graphs/exp-tree-ex-6.dot:
--------------------------------------------------------------------------------
1 | digraph G {
2 | node [fontname="Helvetica",shape=circle];
3 |
4 | stack [shape=record,label="<0>|<1>|<2>|<3>|<4>"];
5 | plus1 [label="+"];
6 | hidden1 [label="",style=invis];
7 |
8 | stack:0:c -> plus1 [tailclip=false];
9 | stack:1:c -> c [tailclip=false];
10 | stack:2:c -> d [tailclip=false];
11 | stack:3:c -> e [tailclip=false];
12 |
13 | plus1 -> a;
14 | plus1 -> hidden1 [style=invis];
15 | plus1 -> b;
16 | {rank=same a -> hidden1 -> b [style=invis]};
17 | }
18 |
--------------------------------------------------------------------------------
/slides/graphs/exp-tree-ex-7.dot:
--------------------------------------------------------------------------------
1 | digraph G {
2 | node [fontname="Helvetica",shape=circle];
3 |
4 | stack [shape=record,label="<0>|<1>|<2>|<3>|<4>"];
5 | plus1 [label="+"];
6 | plus2 [label="+"];
7 | hidden1 [label="",style=invis];
8 | hidden2 [label="",style=invis];
9 |
10 | stack:0:c -> plus1 [tailclip=false];
11 | stack:1:c -> c [tailclip=false];
12 | stack:2:c -> plus2 [tailclip=false];
13 |
14 | plus1 -> a;
15 | plus1 -> hidden1 [style=invis];
16 | plus1 -> b;
17 | {rank=same a -> hidden1 -> b [style=invis]};
18 |
19 | plus2 -> d;
20 | plus2 -> hidden2 [style=invis];
21 | plus2 -> e;
22 | {rank=same d -> hidden2 -> e [style=invis]};
23 | }
24 |
--------------------------------------------------------------------------------
/slides/graphs/file-tree-1.dot:
--------------------------------------------------------------------------------
1 | digraph G {
2 | graph [fontname = "Helvetica"];
3 | node [fontname = "Helvetica"];
4 | edge [fontname = "Helvetica"];
5 |
6 | home -> aaron;
7 | aaron -> cs2150;
8 | cs2150 -> cs4970;
9 | cs4970 -> mail;
10 | mail -> school;
11 | cs2150 -> lab1;
12 | lab1 -> lab2;
13 | lab2 -> proj1;
14 | projh [label="proj.h"];
15 | proj1 -> projh;
16 | collh [label="coll.h"];
17 | lab1 -> collh;
18 | collcpp [label="coll.cpp"];
19 | collh -> collcpp;
20 |
21 | {rank=same cs2150 cs4970 mail };
22 | {rank=same lab1 lab2 proj1 };
23 | {rank=same collh collcpp projh };
24 | }
25 |
--------------------------------------------------------------------------------
/slides/graphs/graph-1.dot:
--------------------------------------------------------------------------------
1 | digraph G {
2 | graph [fontname = "Helvetica"];
3 | node [fontname = "Helvetica",shape=circle,width=0.6];
4 | edge [fontname = "Helvetica",dir=none];
5 |
6 | v1 -> v3;
7 | v1 -> v10;
8 | v2 -> v4;
9 | v3 -> v4;
10 | v3 -> v6;
11 | v3 -> v10;
12 | v4 -> v5;
13 | v5 -> v6;
14 | v6 -> v7;
15 | v6 -> v8;
16 | v7 -> v8;
17 | v8 -> v9;
18 | v9 -> v10;
19 | }
20 |
--------------------------------------------------------------------------------
/slides/graphs/graph-10.dot:
--------------------------------------------------------------------------------
1 | digraph G {
2 | graph [fontname = "Helvetica"];
3 | node [fontname = "Helvetica",shape=circle,width=0.6];
4 | edge [fontname = "Helvetica",dir=none];
5 |
6 | v1 -> v2 [label="7",fontcolor=blue];
7 | v1 -> v3 [label="9",fontcolor=blue];
8 | v1 -> v6 [label="14 ",fontcolor=blue];
9 | v2 -> v3 [label="10",fontcolor=blue];
10 | v2 -> v4 [label="15",fontcolor=blue];
11 | v3 -> v6 [label="2",fontcolor=blue];
12 | v3 -> v4 [label="11",fontcolor=blue];
13 | v4 -> v5 [label="6",fontcolor=blue];
14 | v5 -> v6 [label="9",fontcolor=blue];
15 | }
16 |
--------------------------------------------------------------------------------
/slides/graphs/graph-10.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/graphs/graph-10.png
--------------------------------------------------------------------------------
/slides/graphs/graph-11.dot:
--------------------------------------------------------------------------------
1 | digraph G {
2 | graph [fontname = "Helvetica"];
3 | node [fontname = "Helvetica",shape=circle,width=0.6];
4 | edge [fontname = "Helvetica",dir=none];
5 |
6 | v1 -> v2;
7 | v1 -> v3;
8 | v2 -> v4;
9 | v3 -> v4;
10 | v2 -> v3;
11 | v1 -> v4;
12 |
13 | {rank=same v1};
14 | {rank=same v2 -> v3 [style=invis]};
15 | {rank=same v4};
16 | }
17 |
--------------------------------------------------------------------------------
/slides/graphs/graph-13a.dot:
--------------------------------------------------------------------------------
1 | digraph G {
2 | graph [fontname = "Helvetica"];
3 | node [fontname = "Helvetica",shape=circle,width=0.25];
4 | edge [fontname = "Helvetica",dir=none];
5 |
6 | A [label=""];
7 | B [label=""];
8 | C [label=""];
9 | D [label=""];
10 | E [label=""];
11 | A -> D;
12 | // the cycle:
13 | B -> C;
14 | C -> D;
15 | D -> E;
16 | E -> B;
17 | }
18 |
--------------------------------------------------------------------------------
/slides/graphs/graph-13b.dot:
--------------------------------------------------------------------------------
1 | digraph G {
2 | graph [fontname = "Helvetica"];
3 | node [fontname = "Helvetica",shape=circle,width=0.25];
4 | edge [fontname = "Helvetica",dir=none];
5 |
6 | A [label=""];
7 | B [label=""];
8 | C [label=""];
9 | D [label=""];
10 | E [label=""];
11 | A -> D;
12 | // the cycle:
13 | B -> C [style=invis];
14 | C -> D;
15 | D -> E;
16 | E -> B;
17 | }
18 |
--------------------------------------------------------------------------------
/slides/graphs/graph-13c.dot:
--------------------------------------------------------------------------------
1 | digraph G {
2 | graph [fontname = "Helvetica"];
3 | node [fontname = "Helvetica",shape=circle,width=0.25];
4 | edge [fontname = "Helvetica",dir=none];
5 |
6 | A [label=""];
7 | B [label=""];
8 | C [label=""];
9 | D [label=""];
10 | E [label=""];
11 | A -> D;
12 | // the cycle:
13 | B -> C;
14 | C -> D [style=invis];
15 | D -> E;
16 | E -> B;
17 | }
18 |
--------------------------------------------------------------------------------
/slides/graphs/graph-13d.dot:
--------------------------------------------------------------------------------
1 | digraph G {
2 | graph [fontname = "Helvetica"];
3 | node [fontname = "Helvetica",shape=circle,width=0.25];
4 | edge [fontname = "Helvetica",dir=none];
5 |
6 | A [label=""];
7 | B [label=""];
8 | C [label=""];
9 | D [label=""];
10 | E [label=""];
11 | A -> D;
12 | // the cycle:
13 | B -> C;
14 | C -> D;
15 | D -> E [style=invis];
16 | E -> B;
17 | }
18 |
--------------------------------------------------------------------------------
/slides/graphs/graph-13e.dot:
--------------------------------------------------------------------------------
1 | digraph G {
2 | graph [fontname = "Helvetica"];
3 | node [fontname = "Helvetica",shape=circle,width=0.25];
4 | edge [fontname = "Helvetica",dir=none];
5 |
6 | A [label=""];
7 | B [label=""];
8 | C [label=""];
9 | D [label=""];
10 | E [label=""];
11 | A -> D;
12 | // the cycle:
13 | B -> C;
14 | C -> D;
15 | D -> E;
16 | E -> B [style=invis];
17 | }
18 |
--------------------------------------------------------------------------------
/slides/graphs/graph-14.dot:
--------------------------------------------------------------------------------
1 | digraph G {
2 | graph [fontname = "Helvetica"];
3 | node [fontname = "Helvetica",shape=circle];
4 | edge [fontname = "Helvetica",dir=none];
5 |
6 | v1 -> v2 [label="2",fontcolor=blue];
7 | v1 -> v3 [label="4",fontcolor=blue];
8 | v1 -> v4 [label="1 ",fontcolor=blue];
9 | v2 -> v4 [label="3",fontcolor=blue];
10 | v2 -> v5 [label="10 ",fontcolor=blue];
11 | v3 -> v4 [label="2",fontcolor=blue];
12 | v3 -> v6 [label="5 ",fontcolor=blue];
13 | v4 -> v5 [label="7",fontcolor=blue];
14 | v4 -> v6 [label="8",fontcolor=blue];
15 | v4 -> v7 [label="4 ",fontcolor=blue];
16 | v5 -> v7 [label="6",fontcolor=blue];
17 | v6 -> v7 [label="1",fontcolor=blue];
18 | }
19 |
--------------------------------------------------------------------------------
/slides/graphs/graph-14.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/graphs/graph-14.png
--------------------------------------------------------------------------------
/slides/graphs/graph-15.dot:
--------------------------------------------------------------------------------
1 | digraph G {
2 | graph [fontname = "Helvetica"];
3 | node [fontname = "Helvetica",shape=circle];
4 | edge [fontname = "Helvetica",dir=none];
5 |
6 | v1 -> v2;
7 | v1 -> v3 [style=invis];
8 | v1 -> v4;
9 | v2 -> v4 [style=invis];
10 | v2 -> v5 [style=invis];
11 | v3 -> v4;
12 | v3 -> v6 [style=invis];
13 | v4 -> v5 [style=invis];
14 | v4 -> v6 [style=invis];
15 | v4 -> v7;
16 | v5 -> v7;
17 | v6 -> v7;
18 | }
19 |
--------------------------------------------------------------------------------
/slides/graphs/graph-15.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/graphs/graph-15.png
--------------------------------------------------------------------------------
/slides/graphs/graph-2.dot:
--------------------------------------------------------------------------------
1 | digraph G {
2 | graph [fontname = "Helvetica"];
3 | node [fontname = "Helvetica",shape=circle,width=0.6];
4 | edge [fontname = "Helvetica"];
5 |
6 | A -> B;
7 | A -> C;
8 | A -> D;
9 | B -> G;
10 | C -> E;
11 | D -> E;
12 | D -> F;
13 | E -> A; # in the pptx slide, E -> B, but going to A is better for the layout
14 | F -> G;
15 | }
16 |
--------------------------------------------------------------------------------
/slides/graphs/graph-3.dot:
--------------------------------------------------------------------------------
1 | digraph G {
2 | graph [fontname = "Helvetica"];
3 | node [fontname = "Helvetica",shape=circle,width=0.6];
4 | edge [fontname = "Helvetica"];
5 |
6 | v1 [label="1"];
7 | v2 [label="2"];
8 | v3 [label="3"];
9 | v4 [label="4"];
10 | v1 -> v2;
11 | v1 -> v3;
12 | v1 -> v4;
13 | v2 -> v3;
14 | v4 -> v1;
15 | }
16 |
--------------------------------------------------------------------------------
/slides/graphs/graph-4.dot:
--------------------------------------------------------------------------------
1 | digraph G {
2 | graph [fontname = "Helvetica"];
3 | node [fontname = "Helvetica",shape=circle,width=0.6];
4 | edge [fontname = "Helvetica"];
5 |
6 | v1 -> v2;
7 | v1 -> v3;
8 | v2 -> v4;
9 | v3 -> v2;
10 | v3 -> v4;
11 | v3 -> v7;
12 | v4 -> v5;
13 | v6 -> v3;
14 | v6 -> v7;
15 | v6 -> v8;
16 | v7 -> v5;
17 | }
18 |
--------------------------------------------------------------------------------
/slides/graphs/graph-4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/graphs/graph-4.png
--------------------------------------------------------------------------------
/slides/graphs/graph-5.dot:
--------------------------------------------------------------------------------
1 | digraph G {
2 | graph [fontname = "Helvetica"];
3 | node [fontname = "Helvetica",shape=circle,width=0.6];
4 | edge [fontname = "Helvetica"];
5 |
6 | v1 -> v2;
7 | v1 -> v3;
8 | v2 -> v4;
9 | v3 -> v4;
10 |
11 | {rank=same v1};
12 | {rank=same v2 -> v3 [style=invis]};
13 | {rank=same v4};
14 | }
15 |
--------------------------------------------------------------------------------
/slides/graphs/graph-6.dot:
--------------------------------------------------------------------------------
1 | digraph G {
2 | graph [fontname = "Helvetica"];
3 | node [fontname = "Helvetica",shape=circle,width=0.6];
4 | edge [fontname = "Helvetica"];
5 |
6 | v1 -> v2;
7 | v3 -> v1 [color=red];
8 | v2 -> v4;
9 | v4 -> v3 [color=red];
10 |
11 | {rank=same v1};
12 | {rank=same v2 -> v3 [style=invis]};
13 | {rank=same v4};
14 | }
15 |
--------------------------------------------------------------------------------
/slides/graphs/graph-7.dot:
--------------------------------------------------------------------------------
1 | digraph G {
2 | graph [fontname = "Helvetica"];
3 | node [fontname = "Helvetica",shape=circle,width=0.6];
4 | edge [fontname = "Helvetica"];
5 |
6 | v4 -> v5;
7 | v4 -> v8;
8 | v5 -> v2;
9 | v8 -> v2;
10 | v8 -> v1;
11 | v1 -> v7;
12 | v2 -> v7;
13 | v3 -> v2;
14 | v6 -> v3;
15 | v1 -> v6;
16 | }
17 |
--------------------------------------------------------------------------------
/slides/graphs/graph-8.dot:
--------------------------------------------------------------------------------
1 | digraph G {
2 | graph [fontname = "Helvetica"];
3 | node [fontname = "Helvetica",shape=circle,width=0.6];
4 | edge [fontname = "Helvetica"];
5 |
6 | v2 -> v1;
7 | v1 -> v3;
8 | v1 -> v4;
9 | v2 -> v3;
10 | v2 -> v5;
11 | v4 -> v6;
12 | v4 -> v7;
13 | v0 -> v1;
14 | v0 -> v2;
15 | v3 -> v6;
16 | v5 -> v4;
17 | v6 -> v7;
18 | }
19 |
--------------------------------------------------------------------------------
/slides/graphs/graph-8.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/graphs/graph-8.png
--------------------------------------------------------------------------------
/slides/graphs/graph-9.dot:
--------------------------------------------------------------------------------
1 | digraph G {
2 | graph [fontname = "Helvetica"];
3 | node [fontname = "Helvetica",shape=circle,width=0.6];
4 | edge [fontname = "Helvetica"];
5 |
6 | v0 -> v2 [label="2",fontcolor=blue];
7 | v0 -> v3 [label="1 ",fontcolor=blue];
8 | v1 -> v0 [label="2",fontcolor=blue];
9 | v2 -> v3 [label="1",fontcolor=blue];
10 | v2 -> v5 [label="2 ",fontcolor=blue];
11 | v3 -> v1 [label="5 ",fontcolor=blue];
12 | v3 -> v4 [label="1",fontcolor=blue];
13 | v3 -> v6 [label="5 ",fontcolor=blue];
14 | v3 -> v5 [label="6",fontcolor=blue];
15 | v4 -> v1 [label="1",fontcolor=blue];
16 | v5 -> v6 [label="10",fontcolor=blue];
17 | v6 -> v4 [label="3 ",fontcolor=blue];
18 |
19 | }
20 |
--------------------------------------------------------------------------------
/slides/graphs/graph-9.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/graphs/graph-9.png
--------------------------------------------------------------------------------
/slides/graphs/heap-14.dot:
--------------------------------------------------------------------------------
1 | digraph G {
2 | graph [fontname = "Helvetica"];
3 | node [fontname = "Helvetica",shape=circle,width=0.6];
4 | edge [fontname = "Helvetica"];
5 |
6 | 25 -> 10;
7 | m [label="", width=0.1, style=invis];
8 | 25 -> m [style=invis]
9 | 25 -> 20;
10 | {rank=same 10 -> m -> 20 [style=invis]};
11 | }
12 |
--------------------------------------------------------------------------------
/slides/graphs/heap-15.dot:
--------------------------------------------------------------------------------
1 | digraph G {
2 | graph [fontname = "Helvetica"];
3 | node [fontname = "Helvetica",shape=circle,width=0.6];
4 | edge [fontname = "Helvetica"];
5 |
6 | 10 -> 25;
7 | m [label="", width=0.1, style=invis];
8 | 10 -> m [style=invis]
9 | 10 -> 20;
10 | {rank=same 25 -> m -> 20 [style=invis]};
11 | }
12 |
--------------------------------------------------------------------------------
/slides/graphs/heap-16.dot:
--------------------------------------------------------------------------------
1 | digraph G {
2 | graph [fontname = "Helvetica"];
3 | node [fontname = "Helvetica",shape=circle,width=0.6];
4 | edge [fontname = "Helvetica"];
5 |
6 | 20 -> 10 [color=red];
7 | m [label="", width=0.1, style=invis];
8 | 20 -> m [style=invis]
9 | 20 -> 25;
10 | {rank=same 10 -> m -> 25 [style=invis]};
11 | }
12 |
--------------------------------------------------------------------------------
/slides/graphs/heap-2.dot:
--------------------------------------------------------------------------------
1 | digraph G {
2 | graph [fontname = "Helvetica"];
3 | node [fontname = "Helvetica",shape=circle,width=0.6];
4 | edge [fontname = "Helvetica"];
5 |
6 | 11 -> 5;
7 | m11 [label="", width=0.1, style=invis];
8 | 11 -> m11 [style=invis]
9 | 11 -> 21;
10 | {rank=same 5 -> m11 -> 21 [style=invis]};
11 |
12 | 5 -> 2;
13 | m5 [label="", width=0.1, style=invis];
14 | 5 -> m5 [style=invis]
15 | 5 -> 9;
16 | {rank=same 2 -> m5 -> 9 [style=invis]};
17 |
18 | 2 -> 1;
19 | m2 [label="", width=0.1, style=invis];
20 | 2 -> m2 [style=invis]
21 | 2 -> 3;
22 | {rank=same 1 -> m2 -> 3 [style=invis]};
23 |
24 | }
25 |
--------------------------------------------------------------------------------
/slides/graphs/heap-5.dot:
--------------------------------------------------------------------------------
1 | digraph G {
2 | graph [fontname = "Helvetica"];
3 | node [fontname = "Helvetica",shape=circle,width=0.2];
4 | edge [fontname = "Helvetica"];
5 |
6 | 5 [label=""];
7 | }
8 |
--------------------------------------------------------------------------------
/slides/graphs/heap-6.dot:
--------------------------------------------------------------------------------
1 | digraph G {
2 | graph [fontname = "Helvetica"];
3 | node [fontname = "Helvetica",shape=circle,width=0.2];
4 | edge [fontname = "Helvetica"];
5 |
6 | 5 [label=""];
7 | 11 [label=""];
8 |
9 | 11 -> 5;
10 | m11 [label="", width=0.1, style=invis];
11 | 11 -> m11 [style=invis]
12 | r11 [label="", width=0.1, style=invis];
13 | 11 -> r11 [style=invis]
14 | {rank=same 5 -> m11 -> r11 [style=invis]};
15 | }
16 |
--------------------------------------------------------------------------------
/slides/graphs/heap-7.dot:
--------------------------------------------------------------------------------
1 | digraph G {
2 | graph [fontname = "Helvetica"];
3 | node [fontname = "Helvetica",shape=circle,width=0.2];
4 | edge [fontname = "Helvetica"];
5 |
6 | 5 [label=""];
7 | 11 [label=""];
8 | 21 [label=""];
9 |
10 | 11 -> 5;
11 | m11 [label="", width=0.1, style=invis];
12 | 11 -> m11 [style=invis]
13 | 11 -> 21;
14 | {rank=same 5 -> m11 -> 21 [style=invis]};
15 | }
16 |
--------------------------------------------------------------------------------
/slides/graphs/heap-9.dot:
--------------------------------------------------------------------------------
1 | digraph G {
2 | graph [fontname = "Helvetica"];
3 | node [fontname = "Helvetica",shape=circle,width=0.6];
4 | edge [fontname = "Helvetica"];
5 |
6 | 10 -> 20;
7 | m10 [label="", width=0.1, style=invis];
8 | 10 -> m10 [style=invis]
9 | 10 -> 80;
10 | {rank=same 20 -> m10 -> 80 [style=invis]};
11 |
12 | 20 [color=red];
13 | 15 [color=red];
14 | 20 -> 30;
15 | m20 [label="", width=0.1, style=invis];
16 | 20 -> m20 [style=invis]
17 | 20 -> 15 [color=red];
18 | {rank=same 30 -> m20 -> 15 [style=invis]};
19 | }
20 |
--------------------------------------------------------------------------------
/slides/graphs/huffman-13.dot:
--------------------------------------------------------------------------------
1 | digraph G {
2 | graph [fontname = "Helvetica"];
3 | node [fontname = "Helvetica",shape=circle,width=0.6];
4 | edge [fontname = "Helvetica"];
5 |
6 | 1 [label="-"];
7 | 2 [label="-"];
8 | 3 [label="-"];
9 |
10 | 1 -> a;
11 | m1 [label="", width=0.1, style=invis];
12 | 1 -> m1 [style=invis];
13 | 1 -> 2;
14 | {rank=same a -> m1 -> 2 [style=invis]};
15 |
16 | 2 -> 3;
17 | m2 [label="", width=0.1, style=invis];
18 | 2 -> m2 [style=invis];
19 | 2 -> d;
20 | {rank=same 3 -> m2 -> d [style=invis]};
21 |
22 | 3 -> b;
23 | m3 [label="", width=0.1, style=invis];
24 | 3 -> m3 [style=invis];
25 | 3 -> c;
26 | {rank=same b -> m3 -> c [style=invis]};
27 | }
28 |
--------------------------------------------------------------------------------
/slides/graphs/list-diagram-1.dot:
--------------------------------------------------------------------------------
1 | digraph structs {
2 | graph [fontname = "Helvetica", nodesep=1];
3 | node [fontname = "Helvetica-bold"];
4 | edge [fontname = "Helvetica"];
5 |
6 | node [shape=Mrecord];
7 | pointer [label="L"];
8 | node1 [label="{value: 1 | next: }", ylabel="node"];
9 | node2 [label="{value: 2 | next: }"];
10 | node3 [label="{value: 3 | next: }"];
11 | null [label="", width=0.1, style=invis];
12 |
13 | pointer -> node1;
14 | node1 -> node2;
15 | node2 -> node3;
16 | node3 -> null [arrowhead=dotteeteenormal];
17 |
18 | {rank=same pointer -> node1 -> node2 -> node3 -> null [style=invis]};
19 | }
20 |
--------------------------------------------------------------------------------
/slides/graphs/list-diagram-2.dot:
--------------------------------------------------------------------------------
1 | digraph G {
2 | graph [fontname = "Helvetica"];
3 | node [fontname = "Helvetica"];
4 | edge [fontname = "Helvetica"];
5 |
6 | // specifying :w ports for the destination of these two arrows
7 | // will crash graphviz version 2.36
8 | predecessor -> element;
9 | element -> successor;
10 | {rank=same predecessor -> element -> successor [style=invis]};
11 | }
12 |
--------------------------------------------------------------------------------
/slides/graphs/tree-diagram.dot:
--------------------------------------------------------------------------------
1 | digraph G {
2 | graph [fontname = "Helvetica"];
3 | node [fontname = "Helvetica"];
4 | edge [fontname = "Helvetica"];
5 | parent -> element;
6 | left [label="left child"];
7 | element -> left;
8 | right [label="right child"];
9 | element -> right;
10 | {rank=same left -> right [style=invis]};
11 | }
12 |
--------------------------------------------------------------------------------
/slides/images/01-cpp/clang++-error-message.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/01-cpp/clang++-error-message.png
--------------------------------------------------------------------------------
/slides/images/01-cpp/dynamic-allocation-execution.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/01-cpp/dynamic-allocation-execution.png
--------------------------------------------------------------------------------
/slides/images/01-cpp/g++-error-message.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/01-cpp/g++-error-message.png
--------------------------------------------------------------------------------
/slides/images/01-cpp/pointers-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/01-cpp/pointers-1.png
--------------------------------------------------------------------------------
/slides/images/01-cpp/pointers-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/01-cpp/pointers-2.png
--------------------------------------------------------------------------------
/slides/images/01-cpp/pointers-3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/01-cpp/pointers-3.png
--------------------------------------------------------------------------------
/slides/images/01-cpp/pointers-4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/01-cpp/pointers-4.png
--------------------------------------------------------------------------------
/slides/images/01-cpp/separate-compilation.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/01-cpp/separate-compilation.png
--------------------------------------------------------------------------------
/slides/images/02-lists/lists-adt-arrays.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/02-lists/lists-adt-arrays.png
--------------------------------------------------------------------------------
/slides/images/02-lists/lists-adt-linked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/02-lists/lists-adt-linked.png
--------------------------------------------------------------------------------
/slides/images/02-lists/queue-diagram.dia:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/02-lists/queue-diagram.dia
--------------------------------------------------------------------------------
/slides/images/02-lists/stack-activation-record.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/02-lists/stack-activation-record.png
--------------------------------------------------------------------------------
/slides/images/02-lists/stack-diagram.dia:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/02-lists/stack-diagram.dia
--------------------------------------------------------------------------------
/slides/images/03-numbers/cpu-image.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/03-numbers/cpu-image.png
--------------------------------------------------------------------------------
/slides/images/03-numbers/endian-ness.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/03-numbers/endian-ness.png
--------------------------------------------------------------------------------
/slides/images/03-numbers/eniac.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/03-numbers/eniac.png
--------------------------------------------------------------------------------
/slides/images/03-numbers/fixed-point.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/03-numbers/fixed-point.png
--------------------------------------------------------------------------------
/slides/images/03-numbers/long-division.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/03-numbers/long-division.png
--------------------------------------------------------------------------------
/slides/images/03-numbers/nvidia.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/03-numbers/nvidia.png
--------------------------------------------------------------------------------
/slides/images/03-numbers/ones-complement.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/03-numbers/ones-complement.png
--------------------------------------------------------------------------------
/slides/images/03-numbers/patriot-missile.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/03-numbers/patriot-missile.jpg
--------------------------------------------------------------------------------
/slides/images/03-numbers/sign-and-magnitude.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/03-numbers/sign-and-magnitude.png
--------------------------------------------------------------------------------
/slides/images/03-numbers/twos-complement.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/03-numbers/twos-complement.png
--------------------------------------------------------------------------------
/slides/images/04-arrays-bigoh/2d-array-layout.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/04-arrays-bigoh/2d-array-layout.png
--------------------------------------------------------------------------------
/slides/images/04-arrays-bigoh/graph-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/04-arrays-bigoh/graph-1.png
--------------------------------------------------------------------------------
/slides/images/04-arrays-bigoh/graph-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/04-arrays-bigoh/graph-2.png
--------------------------------------------------------------------------------
/slides/images/04-arrays-bigoh/graph-3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/04-arrays-bigoh/graph-3.png
--------------------------------------------------------------------------------
/slides/images/04-arrays-bigoh/graph-4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/04-arrays-bigoh/graph-4.png
--------------------------------------------------------------------------------
/slides/images/04-arrays-bigoh/graph-5.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/04-arrays-bigoh/graph-5.png
--------------------------------------------------------------------------------
/slides/images/04-arrays-bigoh/omega-diagram-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/04-arrays-bigoh/omega-diagram-1.png
--------------------------------------------------------------------------------
/slides/images/04-arrays-bigoh/omega-diagram-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/04-arrays-bigoh/omega-diagram-2.png
--------------------------------------------------------------------------------
/slides/images/04-arrays-bigoh/theta-diagram.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/04-arrays-bigoh/theta-diagram.png
--------------------------------------------------------------------------------
/slides/images/04-arrays-bigoh/venn-diagram.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/04-arrays-bigoh/venn-diagram.png
--------------------------------------------------------------------------------
/slides/images/05-trees/1024px-Tree_Rebalancing.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/05-trees/1024px-Tree_Rebalancing.gif
--------------------------------------------------------------------------------
/slides/images/05-trees/768px-Tree_of_life_SVG.svg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/05-trees/768px-Tree_of_life_SVG.svg.png
--------------------------------------------------------------------------------
/slides/images/05-trees/Red-black_tree_insert_case_3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/05-trees/Red-black_tree_insert_case_3.png
--------------------------------------------------------------------------------
/slides/images/05-trees/Red-black_tree_insert_case_4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/05-trees/Red-black_tree_insert_case_4.png
--------------------------------------------------------------------------------
/slides/images/05-trees/Red-black_tree_insert_case_5.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/05-trees/Red-black_tree_insert_case_5.png
--------------------------------------------------------------------------------
/slides/images/05-trees/Tree_rotation.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/05-trees/Tree_rotation.png
--------------------------------------------------------------------------------
/slides/images/05-trees/evil-genius-flowchart.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/05-trees/evil-genius-flowchart.gif
--------------------------------------------------------------------------------
/slides/images/06-hashes/blob.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/06-hashes/blob.png
--------------------------------------------------------------------------------
/slides/images/06-hashes/separate-chaining-diagram.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/06-hashes/separate-chaining-diagram.png
--------------------------------------------------------------------------------
/slides/images/07-ibcm/ibcm-memory.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/07-ibcm/ibcm-memory.png
--------------------------------------------------------------------------------
/slides/images/07-ibcm/memory-hierarchy.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/07-ibcm/memory-hierarchy.png
--------------------------------------------------------------------------------
/slides/images/08-x86/C4004.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/08-x86/C4004.jpg
--------------------------------------------------------------------------------
/slides/images/08-x86/registers_x86_64bit.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/08-x86/registers_x86_64bit.png
--------------------------------------------------------------------------------
/slides/images/10-heaps-huffman/ascii.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/10-heaps-huffman/ascii.png
--------------------------------------------------------------------------------
/slides/images/10-heaps-huffman/jpeg-001.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/10-heaps-huffman/jpeg-001.jpg
--------------------------------------------------------------------------------
/slides/images/10-heaps-huffman/jpeg-010.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/10-heaps-huffman/jpeg-010.jpg
--------------------------------------------------------------------------------
/slides/images/10-heaps-huffman/jpeg-025.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/10-heaps-huffman/jpeg-025.jpg
--------------------------------------------------------------------------------
/slides/images/10-heaps-huffman/jpeg-050.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/10-heaps-huffman/jpeg-050.jpg
--------------------------------------------------------------------------------
/slides/images/10-heaps-huffman/jpeg-100.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/10-heaps-huffman/jpeg-100.jpg
--------------------------------------------------------------------------------
/slides/images/10-heaps-huffman/tree.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/10-heaps-huffman/tree.png
--------------------------------------------------------------------------------
/slides/images/11-graphs/airline-routes-from-openflights.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/11-graphs/airline-routes-from-openflights.jpg
--------------------------------------------------------------------------------
/slides/images/11-graphs/geek-gift-flowchart.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/11-graphs/geek-gift-flowchart.gif
--------------------------------------------------------------------------------
/slides/images/11-graphs/google-maps.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/11-graphs/google-maps.png
--------------------------------------------------------------------------------
/slides/images/11-graphs/icpc-midatl-2009-shortest-path.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/11-graphs/icpc-midatl-2009-shortest-path.png
--------------------------------------------------------------------------------
/slides/images/11-graphs/us-city-map.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/11-graphs/us-city-map.jpg
--------------------------------------------------------------------------------
/slides/images/12-memory/amd-bios-memtest.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/12-memory/amd-bios-memtest.png
--------------------------------------------------------------------------------
/slides/images/13-esoteric-pls/whitespace.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/13-esoteric-pls/whitespace.png
--------------------------------------------------------------------------------
/slides/images/calibrate.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/calibrate.png
--------------------------------------------------------------------------------
/slides/images/close.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/close.gif
--------------------------------------------------------------------------------
/slides/images/green-double-arrow.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/green-double-arrow.png
--------------------------------------------------------------------------------
/slides/images/max.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/max.gif
--------------------------------------------------------------------------------
/slides/images/menu-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/menu-icon.png
--------------------------------------------------------------------------------
/slides/images/min.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/min.gif
--------------------------------------------------------------------------------
/slides/images/print-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/print-icon.png
--------------------------------------------------------------------------------
/slides/images/red-double-arrow.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/red-double-arrow.png
--------------------------------------------------------------------------------
/slides/images/resize.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/resize.gif
--------------------------------------------------------------------------------
/slides/images/restore.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/restore.gif
--------------------------------------------------------------------------------
/slides/images/spacer.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/images/spacer.gif
--------------------------------------------------------------------------------
/slides/misc/gt.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/misc/gt.jar
--------------------------------------------------------------------------------
/slides/misc/hash-table-buckets.odt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/misc/hash-table-buckets.odt
--------------------------------------------------------------------------------
/slides/misc/hash-table-buckets.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/misc/hash-table-buckets.pdf
--------------------------------------------------------------------------------
/slides/reiss/advancedCpp.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/reiss/advancedCpp.pdf
--------------------------------------------------------------------------------
/slides/reiss/arrays.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/reiss/arrays.pdf
--------------------------------------------------------------------------------
/slides/reiss/asm.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/reiss/asm.pdf
--------------------------------------------------------------------------------
/slides/reiss/bigoh.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/reiss/bigoh.pdf
--------------------------------------------------------------------------------
/slides/reiss/courseintro.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/reiss/courseintro.pdf
--------------------------------------------------------------------------------
/slides/reiss/cpp.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/reiss/cpp.pdf
--------------------------------------------------------------------------------
/slides/reiss/graphs.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/reiss/graphs.pdf
--------------------------------------------------------------------------------
/slides/reiss/hashes.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/reiss/hashes.pdf
--------------------------------------------------------------------------------
/slides/reiss/heapsHuffman.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/reiss/heapsHuffman.pdf
--------------------------------------------------------------------------------
/slides/reiss/ibcm.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/reiss/ibcm.pdf
--------------------------------------------------------------------------------
/slides/reiss/lists.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/reiss/lists.pdf
--------------------------------------------------------------------------------
/slides/reiss/memory.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/reiss/memory.pdf
--------------------------------------------------------------------------------
/slides/reiss/numbers.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/reiss/numbers.pdf
--------------------------------------------------------------------------------
/slides/reiss/trees.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/reiss/trees.pdf
--------------------------------------------------------------------------------
/slides/reveal.js/.github/FUNDING.yml:
--------------------------------------------------------------------------------
1 | github: [hakimel]
2 |
--------------------------------------------------------------------------------
/slides/reveal.js/.github/workflows/js.yml:
--------------------------------------------------------------------------------
1 | name: tests
2 |
3 | on: [push]
4 |
5 | jobs:
6 | build:
7 |
8 | runs-on: ubuntu-latest
9 |
10 | strategy:
11 | matrix:
12 | node-version: [10.x, 14.x, 16.x]
13 |
14 | steps:
15 | - uses: actions/checkout@v2
16 | - name: Use Node.js ${{ matrix.node-version }}
17 | uses: actions/setup-node@v1
18 | with:
19 | node-version: ${{ matrix.node-version }}
20 | - run: npm install
21 | - run: npm run build --if-present
22 | - run: npm test
23 | env:
24 | CI: true
25 |
--------------------------------------------------------------------------------
/slides/reveal.js/.gitignore:
--------------------------------------------------------------------------------
1 | .idea/
2 | *.iml
3 | *.iws
4 | *.eml
5 | out/
6 | .DS_Store
7 | .svn
8 | log/*.log
9 | tmp/**
10 | node_modules/
11 | .sass-cache
12 | dist/*.map
--------------------------------------------------------------------------------
/slides/reveal.js/.npmignore:
--------------------------------------------------------------------------------
1 | /test
2 | /examples
3 | .github
4 | .gulpfile
5 | .sass-cache
6 | gulpfile.js
7 | CONTRIBUTING.md
--------------------------------------------------------------------------------
/slides/reveal.js/dist/theme/fonts/league-gothic/LICENSE:
--------------------------------------------------------------------------------
1 | SIL Open Font License (OFL)
2 | http://scripts.sil.org/cms/scripts/page.php?site_id=nrsi&id=OFL
3 |
--------------------------------------------------------------------------------
/slides/reveal.js/dist/theme/fonts/league-gothic/league-gothic.css:
--------------------------------------------------------------------------------
1 | @font-face {
2 | font-family: 'League Gothic';
3 | src: url('./league-gothic.eot');
4 | src: url('./league-gothic.eot?#iefix') format('embedded-opentype'),
5 | url('./league-gothic.woff') format('woff'),
6 | url('./league-gothic.ttf') format('truetype');
7 |
8 | font-weight: normal;
9 | font-style: normal;
10 | }
11 |
--------------------------------------------------------------------------------
/slides/reveal.js/dist/theme/fonts/league-gothic/league-gothic.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/reveal.js/dist/theme/fonts/league-gothic/league-gothic.eot
--------------------------------------------------------------------------------
/slides/reveal.js/dist/theme/fonts/league-gothic/league-gothic.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/reveal.js/dist/theme/fonts/league-gothic/league-gothic.ttf
--------------------------------------------------------------------------------
/slides/reveal.js/dist/theme/fonts/league-gothic/league-gothic.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/reveal.js/dist/theme/fonts/league-gothic/league-gothic.woff
--------------------------------------------------------------------------------
/slides/reveal.js/dist/theme/fonts/source-sans-pro/source-sans-pro-italic.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/reveal.js/dist/theme/fonts/source-sans-pro/source-sans-pro-italic.eot
--------------------------------------------------------------------------------
/slides/reveal.js/dist/theme/fonts/source-sans-pro/source-sans-pro-italic.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/reveal.js/dist/theme/fonts/source-sans-pro/source-sans-pro-italic.ttf
--------------------------------------------------------------------------------
/slides/reveal.js/dist/theme/fonts/source-sans-pro/source-sans-pro-italic.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/reveal.js/dist/theme/fonts/source-sans-pro/source-sans-pro-italic.woff
--------------------------------------------------------------------------------
/slides/reveal.js/dist/theme/fonts/source-sans-pro/source-sans-pro-regular.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/reveal.js/dist/theme/fonts/source-sans-pro/source-sans-pro-regular.eot
--------------------------------------------------------------------------------
/slides/reveal.js/dist/theme/fonts/source-sans-pro/source-sans-pro-regular.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/reveal.js/dist/theme/fonts/source-sans-pro/source-sans-pro-regular.ttf
--------------------------------------------------------------------------------
/slides/reveal.js/dist/theme/fonts/source-sans-pro/source-sans-pro-regular.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/reveal.js/dist/theme/fonts/source-sans-pro/source-sans-pro-regular.woff
--------------------------------------------------------------------------------
/slides/reveal.js/dist/theme/fonts/source-sans-pro/source-sans-pro-semibold.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/reveal.js/dist/theme/fonts/source-sans-pro/source-sans-pro-semibold.eot
--------------------------------------------------------------------------------
/slides/reveal.js/dist/theme/fonts/source-sans-pro/source-sans-pro-semibold.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/reveal.js/dist/theme/fonts/source-sans-pro/source-sans-pro-semibold.ttf
--------------------------------------------------------------------------------
/slides/reveal.js/dist/theme/fonts/source-sans-pro/source-sans-pro-semibold.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/reveal.js/dist/theme/fonts/source-sans-pro/source-sans-pro-semibold.woff
--------------------------------------------------------------------------------
/slides/reveal.js/dist/theme/fonts/source-sans-pro/source-sans-pro-semibolditalic.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/reveal.js/dist/theme/fonts/source-sans-pro/source-sans-pro-semibolditalic.eot
--------------------------------------------------------------------------------
/slides/reveal.js/dist/theme/fonts/source-sans-pro/source-sans-pro-semibolditalic.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/reveal.js/dist/theme/fonts/source-sans-pro/source-sans-pro-semibolditalic.ttf
--------------------------------------------------------------------------------
/slides/reveal.js/dist/theme/fonts/source-sans-pro/source-sans-pro-semibolditalic.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/reveal.js/dist/theme/fonts/source-sans-pro/source-sans-pro-semibolditalic.woff
--------------------------------------------------------------------------------
/slides/reveal.js/examples/assets/beeping.txt:
--------------------------------------------------------------------------------
1 | Source: https://freesound.org/people/fennelliott/sounds/379419/
2 | License: CC0 (public domain)
--------------------------------------------------------------------------------
/slides/reveal.js/examples/assets/beeping.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/reveal.js/examples/assets/beeping.wav
--------------------------------------------------------------------------------
/slides/reveal.js/examples/assets/image1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/reveal.js/examples/assets/image1.png
--------------------------------------------------------------------------------
/slides/reveal.js/examples/assets/image2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/slides/reveal.js/examples/assets/image2.png
--------------------------------------------------------------------------------
/slides/reveal.js/examples/markdown.md:
--------------------------------------------------------------------------------
1 | # Markdown Demo
2 |
3 |
4 |
5 | ## External 1.1
6 |
7 | Content 1.1
8 |
9 | Note: This will only appear in the speaker notes window.
10 |
11 |
12 | ## External 1.2
13 |
14 | Content 1.2
15 |
16 |
17 |
18 | ## External 2
19 |
20 | Content 2.1
21 |
22 |
23 |
24 | ## External 3.1
25 |
26 | Content 3.1
27 |
28 |
29 | ## External 3.2
30 |
31 | Content 3.2
32 |
33 |
34 | ## External 3.3
35 |
36 | 
37 |
--------------------------------------------------------------------------------
/slides/reveal.js/js/utils/constants.js:
--------------------------------------------------------------------------------
1 |
2 | export const SLIDES_SELECTOR = '.slides section';
3 | export const HORIZONTAL_SLIDES_SELECTOR = '.slides>section';
4 | export const VERTICAL_SLIDES_SELECTOR = '.slides>section.present>section';
5 |
6 | // Methods that may not be invoked via the postMessage API
7 | export const POST_MESSAGE_METHOD_BLACKLIST = /registerPlugin|registerKeyboardShortcut|addKeyBinding|addEventListener/;
8 |
9 | // Regex for retrieving the fragment style from a class attribute
10 | export const FRAGMENT_STYLE_REGEX = /fade-(down|up|right|left|out|in-then-out|in-then-semi-out)|semi-fade-out|current-visible|shrink|grow/;
--------------------------------------------------------------------------------
/slides/reveal.js/test/assets/external-script-a.js:
--------------------------------------------------------------------------------
1 | window.externalScriptSequence += 'A';
--------------------------------------------------------------------------------
/slides/reveal.js/test/assets/external-script-b.js:
--------------------------------------------------------------------------------
1 | window.externalScriptSequence += 'B';
--------------------------------------------------------------------------------
/slides/reveal.js/test/assets/external-script-c.js:
--------------------------------------------------------------------------------
1 | window.externalScriptSequence += 'C';
--------------------------------------------------------------------------------
/slides/reveal.js/test/assets/external-script-d.js:
--------------------------------------------------------------------------------
1 | window.externalScriptSequence += 'D';
--------------------------------------------------------------------------------
/slides/reveal.js/test/simple.md:
--------------------------------------------------------------------------------
1 | ## Slide 1.1
2 |
3 | ```js
4 | var a = 1;
5 | ```
6 |
7 |
8 | ## Slide 1.2
9 |
10 |
11 |
12 | ## Slide 2
13 |
--------------------------------------------------------------------------------
/slides/x86/.gitignore:
--------------------------------------------------------------------------------
1 | *.png
2 |
--------------------------------------------------------------------------------
/slides/x86/32bit/Makefile:
--------------------------------------------------------------------------------
1 | main:
2 | dot -Tsvg -O x86-cc-stack-64.dot
3 | dot -Tsvg -O x86-cc-esp-64.dot
4 | dot -Tsvg -O x86-cc-regs-64.dot
5 | dot -Tpng -O x86-cc-stack-64.dot
6 | dot -Tpng -O x86-cc-esp-64.dot
7 | dot -Tpng -O x86-cc-regs-64.dot
8 |
--------------------------------------------------------------------------------
/slides/x86/32bit/Makefile.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
9 | Makefile
10 |
11 |
12 | main:
13 | dot -Tsvg -O x86-cc-stack-64.dot
14 | dot -Tsvg -O x86-cc-esp-64.dot
15 | dot -Tsvg -O x86-cc-regs-64.dot
16 | dot -Tpng -O x86-cc-stack-64.dot
17 | dot -Tpng -O x86-cc-esp-64.dot
18 | dot -Tpng -O x86-cc-regs-64.dot
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/slides/x86/64bit/Makefile:
--------------------------------------------------------------------------------
1 | main:
2 | dot -Tsvg -O x86-cc-stack.dot
3 | dot -Tsvg -O x86-cc-rsp.dot
4 | dot -Tsvg -O x86-cc-regs.dot
5 | dot -Tpng -O x86-cc-stack.dot
6 | dot -Tpng -O x86-cc-rsp.dot
7 | dot -Tpng -O x86-cc-regs.dot
8 |
--------------------------------------------------------------------------------
/slides/x86/64bit/Makefile.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
9 | Makefile
10 |
11 |
12 | main:
13 | dot -Tsvg -O x86-cc-stack.dot
14 | dot -Tsvg -O x86-cc-rsp.dot
15 | dot -Tsvg -O x86-cc-regs.dot
16 | dot -Tpng -O x86-cc-stack.dot
17 | dot -Tpng -O x86-cc-rsp.dot
18 | dot -Tpng -O x86-cc-regs.dot
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/tutorials/01-intro-unix/emacs-meta-command.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/tutorials/01-intro-unix/emacs-meta-command.png
--------------------------------------------------------------------------------
/tutorials/01-intro-unix/emacs-on-open.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/tutorials/01-intro-unix/emacs-on-open.png
--------------------------------------------------------------------------------
/tutorials/01-intro-unix/emacs-with-code.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/tutorials/01-intro-unix/emacs-with-code.png
--------------------------------------------------------------------------------
/tutorials/02-gdb/prog1.cpp:
--------------------------------------------------------------------------------
1 | #include
2 | using namespace std;
3 |
4 | void my_subroutine() {
5 | cout << "Hello world" << endl;
6 | }
7 |
8 | int main() {
9 | int x = 4;
10 | int *p = NULL;
11 | my_subroutine();
12 | *p = 3;
13 | cout << x << ", " << *p << endl;
14 | return 0;
15 | }
16 |
--------------------------------------------------------------------------------
/tutorials/02-lldb/prog1.cpp:
--------------------------------------------------------------------------------
1 | #include
2 | using namespace std;
3 |
4 | void my_subroutine() {
5 | cout << "Hello world" << endl;
6 | }
7 |
8 | int main() {
9 | int x = 4;
10 | int *p = NULL;
11 | my_subroutine();
12 | *p = 3;
13 | cout << x << ", " << *p << endl;
14 | return 0;
15 | }
16 |
--------------------------------------------------------------------------------
/tutorials/03-04-more-unix/arc/unixtut.tar.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/tutorials/03-04-more-unix/arc/unixtut.tar.gz
--------------------------------------------------------------------------------
/tutorials/03-04-more-unix/arc/unixtut.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/tutorials/03-04-more-unix/arc/unixtut.zip
--------------------------------------------------------------------------------
/tutorials/03-04-more-unix/file1.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/tutorials/03-04-more-unix/file1.gif
--------------------------------------------------------------------------------
/tutorials/03-04-more-unix/media/arrow.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/tutorials/03-04-more-unix/media/arrow.gif
--------------------------------------------------------------------------------
/tutorials/03-04-more-unix/media/box_bottom.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/tutorials/03-04-more-unix/media/box_bottom.gif
--------------------------------------------------------------------------------
/tutorials/03-04-more-unix/media/box_top.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/tutorials/03-04-more-unix/media/box_top.gif
--------------------------------------------------------------------------------
/tutorials/03-04-more-unix/media/gnome-window.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/tutorials/03-04-more-unix/media/gnome-window.gif
--------------------------------------------------------------------------------
/tutorials/03-04-more-unix/media/home.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/tutorials/03-04-more-unix/media/home.gif
--------------------------------------------------------------------------------
/tutorials/03-04-more-unix/media/left.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/tutorials/03-04-more-unix/media/left.gif
--------------------------------------------------------------------------------
/tutorials/03-04-more-unix/media/linux-penguin-small.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/tutorials/03-04-more-unix/media/linux-penguin-small.png
--------------------------------------------------------------------------------
/tutorials/03-04-more-unix/media/right.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/tutorials/03-04-more-unix/media/right.gif
--------------------------------------------------------------------------------
/tutorials/03-04-more-unix/media/unix-plate2.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/tutorials/03-04-more-unix/media/unix-plate2.jpg
--------------------------------------------------------------------------------
/tutorials/03-04-more-unix/media/unix-tree.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/tutorials/03-04-more-unix/media/unix-tree.png
--------------------------------------------------------------------------------
/tutorials/03-04-more-unix/media/unix-xterm0.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/tutorials/03-04-more-unix/media/unix-xterm0.gif
--------------------------------------------------------------------------------
/tutorials/03-04-more-unix/media/unix-xterm1.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/tutorials/03-04-more-unix/media/unix-xterm1.gif
--------------------------------------------------------------------------------
/tutorials/03-04-more-unix/media/unix-xterm2.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/tutorials/03-04-more-unix/media/unix-xterm2.gif
--------------------------------------------------------------------------------
/tutorials/03-04-more-unix/science.txt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/tutorials/03-04-more-unix/science.txt
--------------------------------------------------------------------------------
/tutorials/03-04-more-unix/units-1.74.tar.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/tutorials/03-04-more-unix/units-1.74.tar.gz
--------------------------------------------------------------------------------
/tutorials/05-make/.gitignore:
--------------------------------------------------------------------------------
1 | pizza/pizza
2 |
--------------------------------------------------------------------------------
/tutorials/05-make/pizza.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/tutorials/05-make/pizza.zip
--------------------------------------------------------------------------------
/tutorials/05-make/pizza/cheese.cpp:
--------------------------------------------------------------------------------
1 | #include "cheese.h"
2 |
3 | Cheese::Cheese() {
4 | quantity=0;
5 | }
6 |
7 | Cheese::Cheese(int amount) {
8 | quantity=amount;
9 | }
10 |
--------------------------------------------------------------------------------
/tutorials/05-make/pizza/cheese.h:
--------------------------------------------------------------------------------
1 | #ifndef CHEESE_H
2 | #define CHEESE_H
3 | class Cheese {
4 | private:
5 | int quantity;
6 | public:
7 | Cheese();
8 | Cheese(int amount);
9 | };
10 | #endif
11 |
--------------------------------------------------------------------------------
/tutorials/05-make/pizza/mushrooms.cpp:
--------------------------------------------------------------------------------
1 | #include "mushrooms.h"
2 |
3 | Mushrooms::Mushrooms() {
4 | quantity=0;
5 | }
6 |
7 | Mushrooms::Mushrooms(int amount) {
8 | quantity=amount;
9 | }
10 |
--------------------------------------------------------------------------------
/tutorials/05-make/pizza/mushrooms.h:
--------------------------------------------------------------------------------
1 | #ifndef MUSHROOMS_H
2 | #define MUSHROOMS_H
3 | class Mushrooms {
4 | private:
5 | int quantity;
6 | public:
7 | Mushrooms();
8 | Mushrooms(int amount);
9 | };
10 | #endif
11 |
--------------------------------------------------------------------------------
/tutorials/05-make/pizza/pepperoni.cpp:
--------------------------------------------------------------------------------
1 | #include "pepperoni.h"
2 |
3 | Pepperoni::Pepperoni() {
4 | quantity=0;
5 | }
6 |
7 | Pepperoni::Pepperoni(int amount) {
8 | quantity=amount;
9 | }
10 |
--------------------------------------------------------------------------------
/tutorials/05-make/pizza/pepperoni.h:
--------------------------------------------------------------------------------
1 | #ifndef PEPPERONI_H
2 | #define PEPPERONI_H
3 | class Pepperoni {
4 | private:
5 | int quantity;
6 | public:
7 | Pepperoni();
8 | Pepperoni(int amount);
9 | };
10 | #endif
11 |
--------------------------------------------------------------------------------
/tutorials/05-make/pizza/peppers.cpp:
--------------------------------------------------------------------------------
1 | #include "peppers.h"
2 |
3 | Peppers::Peppers() {
4 | quantity=0;
5 | }
6 |
7 | Peppers::Peppers(int amount) {
8 | quantity=amount;
9 | }
10 |
--------------------------------------------------------------------------------
/tutorials/05-make/pizza/peppers.h:
--------------------------------------------------------------------------------
1 | #ifndef PEPPERS_H
2 | #define PEPPERS_H
3 | class Peppers {
4 | private:
5 | int quantity;
6 | public:
7 | Peppers();
8 | Peppers(int amount);
9 | };
10 | #endif
11 |
--------------------------------------------------------------------------------
/tutorials/05-make/pizza/pizza.cpp:
--------------------------------------------------------------------------------
1 | #include
2 | using namespace std;
3 | #include "pizzadough.h"
4 | #include "tomatosauce.h"
5 | #include "toppings.h"
6 |
7 | int main() {
8 | //PizzaDough(Portion of pizza dough)
9 | PizzaDough dough(1);
10 | //TomatoSauce(Portion of tomato sauce)
11 | TomatoSauce sauce(5);
12 | //Toppings(Portion of cheese, Portion of mushrooms, Portion of peppers, Portion of pepperoni)
13 | Toppings toppings(8,20,20,20);
14 | cout<<"This is a pizza" << endl;
15 | return 0;
16 | }
17 |
--------------------------------------------------------------------------------
/tutorials/05-make/pizza/pizzadough.cpp:
--------------------------------------------------------------------------------
1 | #include
2 | using namespace std;
3 | #include "pizzadough.h"
4 |
5 | PizzaDough::PizzaDough(int amount) {
6 | quantity=amount;
7 | }
8 |
--------------------------------------------------------------------------------
/tutorials/05-make/pizza/pizzadough.h:
--------------------------------------------------------------------------------
1 | #ifndef PIZZADOUGH_H
2 | #define PIZZADOUGH_H
3 | class PizzaDough {
4 | private:
5 | int quantity;
6 | public:
7 | PizzaDough(int amount);
8 | };
9 | #endif
10 |
--------------------------------------------------------------------------------
/tutorials/05-make/pizza/tomatosauce.cpp:
--------------------------------------------------------------------------------
1 | #include
2 | using namespace std;
3 | #include "tomatosauce.h"
4 |
5 | TomatoSauce::TomatoSauce(int amount) {
6 | quantity=amount;
7 | }
8 |
--------------------------------------------------------------------------------
/tutorials/05-make/pizza/tomatosauce.h:
--------------------------------------------------------------------------------
1 | #ifndef TOMATOSAUCE_H
2 | #define TOMATOSAUCE_H
3 | class TomatoSauce {
4 | private:
5 | int quantity;
6 | public:
7 | TomatoSauce(int amount);
8 | };
9 | #endif
10 |
--------------------------------------------------------------------------------
/tutorials/05-make/pizza/toppings.cpp:
--------------------------------------------------------------------------------
1 | #include "toppings.h"
2 |
3 | Toppings::Toppings(int cheeseAmount, int mushroomsAmount, int peppersAmount, int pepperoniAmount) {
4 | cheese=new Cheese(cheeseAmount);
5 | mushrooms=new Mushrooms(mushroomsAmount);
6 | peppers=new Peppers(peppersAmount);
7 | pepperoni=new Pepperoni(pepperoniAmount);
8 | }
9 |
10 | Toppings:: ~Toppings() {
11 | delete cheese;
12 | delete mushrooms;
13 | delete peppers;
14 | delete pepperoni;
15 | }
16 |
--------------------------------------------------------------------------------
/tutorials/05-make/pizza/toppings.h:
--------------------------------------------------------------------------------
1 | #ifndef TOPPINGS_H
2 | #define TOPPINGS_H
3 |
4 | #include "cheese.h"
5 | #include "mushrooms.h"
6 | #include "peppers.h"
7 | #include "pepperoni.h"
8 |
9 |
10 | class Toppings {
11 | private:
12 | Cheese* cheese;
13 | Mushrooms* mushrooms;
14 | Peppers* peppers;
15 | Pepperoni* pepperoni;
16 | public:
17 | Toppings(int cheeseAmount, int mushroomsAmount, int peppersAmount, int pepperoniAmount);
18 | ~Toppings();
19 | };
20 | #endif
21 |
--------------------------------------------------------------------------------
/tutorials/06-07-bash-scripting/bash-shell-scripting-from-wikibooks_files/1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/tutorials/06-07-bash-scripting/bash-shell-scripting-from-wikibooks_files/1.png
--------------------------------------------------------------------------------
/tutorials/06-07-bash-scripting/bash-shell-scripting-from-wikibooks_files/120px-Emblem-diamond.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/tutorials/06-07-bash-scripting/bash-shell-scripting-from-wikibooks_files/120px-Emblem-diamond.png
--------------------------------------------------------------------------------
/tutorials/06-07-bash-scripting/bash-shell-scripting-from-wikibooks_files/120px-Go-next.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/tutorials/06-07-bash-scripting/bash-shell-scripting-from-wikibooks_files/120px-Go-next.png
--------------------------------------------------------------------------------
/tutorials/06-07-bash-scripting/bash-shell-scripting-from-wikibooks_files/24px-00_percents.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/tutorials/06-07-bash-scripting/bash-shell-scripting-from-wikibooks_files/24px-00_percents.png
--------------------------------------------------------------------------------
/tutorials/06-07-bash-scripting/bash-shell-scripting-from-wikibooks_files/40px-Book_important2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/tutorials/06-07-bash-scripting/bash-shell-scripting-from-wikibooks_files/40px-Book_important2.png
--------------------------------------------------------------------------------
/tutorials/06-07-bash-scripting/bash-shell-scripting-from-wikibooks_files/CloseWindow19x19.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/tutorials/06-07-bash-scripting/bash-shell-scripting-from-wikibooks_files/CloseWindow19x19.png
--------------------------------------------------------------------------------
/tutorials/06-07-bash-scripting/bash-shell-scripting-from-wikibooks_files/checkLoggedIn.js:
--------------------------------------------------------------------------------
1 | /* Not centrally logged in */
2 | var t = new Date();t.setTime( t.getTime() + 86400000 );if ( 'localStorage' in window ) {localStorage.setItem( 'CentralAuthAnon', t.getTime() );} else {document.cookie = 'CentralAuthAnon=1; expires=' + t.toGMTString() + '; path=/';}
--------------------------------------------------------------------------------
/tutorials/06-07-bash-scripting/bash-shell-scripting-from-wikibooks_files/geoiplookup.js:
--------------------------------------------------------------------------------
1 | Geo = {"city":"Charlottesville","country":"US","lat":"38.032902","lon":"-78.513702","IP":"128.143.63.95"}
--------------------------------------------------------------------------------
/tutorials/06-07-bash-scripting/bash-shell-scripting-from-wikibooks_files/index_002.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Hide prefix in category
3 | *
4 | * @source: http://www.mediawiki.org/wiki/Snippets/Hide_prefix_in_category
5 | * @rev: 2
6 | * @author: Krinkle
7 | */
8 |
9 | $(document).ready( function() {
10 | var prefix = $( '#mw-cat-hideprefix' ).text();
11 | if ( $.trim( prefix ) === '' ) {
12 | prefix = mw.config.get( 'wgTitle' ) + '/';
13 | }
14 | $( '#mw-pages' ).add( '#mw-subcategories' ).find( 'a' ).text( function( i, val ) {
15 | return val.replace( new RegExp( '^' + $.escapeRE( prefix ) ), '' );
16 | });
17 | });
--------------------------------------------------------------------------------
/tutorials/06-07-bash-scripting/bash-shell-scripting-from-wikibooks_files/index_005.js:
--------------------------------------------------------------------------------
1 | jQuery( function() {
2 | var pagename = mw.config.get( 'wgPageName' );
3 | // Main Page
4 | if ( pagename == 'Main_Page' || pagename == 'Talk:Main_Page' ) {
5 | $('#ca-nstab-main a').text( 'Main Page' );
6 | // Wikijunior
7 | } else if ( pagename == 'Wikijunior' || pagename == 'Talk:Wikijunior' ) {
8 | $('#ca-nstab-main a').text( 'Wikijunior' );
9 | // Cookbook:Table of Contents
10 | } else if ( pagename == 'Cookbook:Table_of_Contents' || pagename == 'Cookbook_talk:Table_of_Contents' ) {
11 | $('#ca-nstab-cookbook a').text( 'Cookbook' );
12 | }
13 | });
--------------------------------------------------------------------------------
/tutorials/06-07-bash-scripting/bash-shell-scripting-from-wikibooks_files/index_012.js:
--------------------------------------------------------------------------------
1 | function change_displaytitle()
2 | {
3 | var text = $("#displaytitle").attr('title'), what;
4 |
5 | if ( text ) {
6 | what = $("#ca-nstab-" + ( mw.config.get('wgCanonicalNamespace').toLowerCase() || 'main' ) );
7 | what.find('a').text(text);
8 | }
9 | }
10 |
11 | $(document).ready(change_displaytitle);
--------------------------------------------------------------------------------
/tutorials/06-07-bash-scripting/bash-shell-scripting-from-wikibooks_files/index_015.js:
--------------------------------------------------------------------------------
1 | //
2 | // Force short review box to be on its own line.
3 |
4 | $(document).ready( function() {
5 | $j('.flaggedrevs_short').wrap('');
6 | });
7 |
8 | //
--------------------------------------------------------------------------------
/tutorials/06-07-bash-scripting/bash-shell-scripting-from-wikibooks_files/poweredby_mediawiki_88x31.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/tutorials/06-07-bash-scripting/bash-shell-scripting-from-wikibooks_files/poweredby_mediawiki_88x31.png
--------------------------------------------------------------------------------
/tutorials/06-07-bash-scripting/bash-shell-scripting-from-wikibooks_files/wikimedia-button.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/tutorials/06-07-bash-scripting/bash-shell-scripting-from-wikibooks_files/wikimedia-button.png
--------------------------------------------------------------------------------
/tutorials/11-doxygen/graph-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/tutorials/11-doxygen/graph-1.png
--------------------------------------------------------------------------------
/tutorials/11-doxygen/graph-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/tutorials/11-doxygen/graph-2.png
--------------------------------------------------------------------------------
/tutorials/11-doxygen/graph-3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/tutorials/11-doxygen/graph-3.png
--------------------------------------------------------------------------------
/tutorials/11-doxygen/screenshot.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/tutorials/11-doxygen/screenshot.png
--------------------------------------------------------------------------------
/tutorials/12-objc/helloworld.m:
--------------------------------------------------------------------------------
1 | #import
2 | int main (void) {
3 | printf ("Hello world!\n");
4 | return 0;
5 | }
6 |
7 |
--------------------------------------------------------------------------------
/tutorials/unixtut.tar.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/tutorials/unixtut.tar.gz
--------------------------------------------------------------------------------
/utils/.gitignore:
--------------------------------------------------------------------------------
1 | markdown
2 |
--------------------------------------------------------------------------------
/utils/Makefile:
--------------------------------------------------------------------------------
1 | markdown:
2 | g++ markdown.cpp -o markdown -lmarkdown
3 |
--------------------------------------------------------------------------------
/utils/Makefile.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
9 | Makefile
10 |
11 |
12 | markdown:
13 | g++ markdown.cpp -o markdown -lmarkdown
14 |
15 |
16 |
17 |
--------------------------------------------------------------------------------
/utils/format-source-files.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | # take every path in the repo ending in .cpp, .c, or .h, ignoring those under book
4 | astyle --style=attach --indent=spaces=4 --indent-switches \
5 | --suffix=none --formatted --recursive '*.cpp,*.c,*.h' --exclude='book'
6 |
--------------------------------------------------------------------------------
/utils/highlight-source-files.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | # take every path in the repo ending in .c, .cpp, .h, or Makefile, ignoring those under book
4 | for infile in `find . -type f \( -name '*.c' -or -name '*.cpp' -or\
5 | -name '*.h' -or -name 'Makefile' \) | grep -v 'book'`; do
6 | source-highlight --doc $infile --title `basename $infile` --out-format html5 --quiet --gen-version
7 | done
8 |
9 | # for Assembly files, treat them as Assembly and not S
10 | for infile in `find . -type f -name '*.s' | grep -v 'book'`; do
11 | source-highlight --doc $infile --title `basename $infile` --out-format html5 --quiet --gen-version --lang-def 'asm.lang'
12 | done
13 |
--------------------------------------------------------------------------------
/uva/.gitignore:
--------------------------------------------------------------------------------
1 | unix-honor-pledge.pdf
2 | *.aux
3 | *.log
4 | tas-no-bios.*
5 |
--------------------------------------------------------------------------------
/uva/Makefile:
--------------------------------------------------------------------------------
1 | main:
2 | cd .. && make
3 |
--------------------------------------------------------------------------------
/uva/enrollment.data:
--------------------------------------------------------------------------------
1 | #
2 | 1 69 f07
3 | 2 78 s08
4 | 3 52 f08
5 | 4 100 s09
6 | 5 61 f09
7 | 6 115 s10
8 | 7 92 f10
9 | 8 136 s11
10 | 9 91 f11
11 | 10 144 s12
12 | 11 158 f12
13 | 12 176 s13
14 | 13 211 f13
15 | 14 213 s14
16 | 15 169 f14
17 | 16 216 s15
18 | 17 249 f15
19 | 18 264 s16
20 | 19 275 f16
21 | 20 300 s17
22 | 21 310 f17
23 | 22 345 s18
24 | 23 445 f18
25 | 24 384 s19
26 | 25 403 f19
27 | 26 364 s20
28 | 27 512 f20
29 | 28 486 s21
30 | 29 472 f21
31 | 30 393 s22
32 | 31 84 f22
33 |
--------------------------------------------------------------------------------
/uva/grades.md:
--------------------------------------------------------------------------------
1 | Grading Explanations, Spring 2022
2 | =================================
3 |
4 | [Go up to the CS 2150 page](index.html) ([md](index.md))
5 |
6 |
7 |
8 |
9 | As per the [syllabus](syllabus.html) ([md](syllabus.md)), the grades were computed by:
10 |
11 | - Laboratories (45%)
12 | - Two midterms (30%; 15% each)
13 | - Final exam (25%)
14 |
15 | ## The Process of Grade Determination
16 |
17 | 
18 |
--------------------------------------------------------------------------------
/uva/images/introduction/Floryan.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/uva/images/introduction/Floryan.jpg
--------------------------------------------------------------------------------
/uva/images/introduction/Nguyen.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/uva/images/introduction/Nguyen.JPG
--------------------------------------------------------------------------------
/uva/images/introduction/aaronbloomfield.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/uva/images/introduction/aaronbloomfield.jpg
--------------------------------------------------------------------------------
/uva/images/introduction/contacting-flowchart-small.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/uva/images/introduction/contacting-flowchart-small.png
--------------------------------------------------------------------------------
/uva/images/introduction/contacting-flowchart-with-mrf8t-small.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/uva/images/introduction/contacting-flowchart-with-mrf8t-small.png
--------------------------------------------------------------------------------
/uva/images/introduction/contacting-flowchart-with-mrf8t.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/uva/images/introduction/contacting-flowchart-with-mrf8t.png
--------------------------------------------------------------------------------
/uva/images/introduction/contacting-flowchart.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/uva/images/introduction/contacting-flowchart.png
--------------------------------------------------------------------------------
/uva/images/introduction/levels-of-abstraction.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/uva/images/introduction/levels-of-abstraction.png
--------------------------------------------------------------------------------
/uva/images/introduction/smiley.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/uva/images/introduction/smiley.jpg
--------------------------------------------------------------------------------
/uva/images/introduction/spring-break-2014-student.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/uva/images/introduction/spring-break-2014-student.png
--------------------------------------------------------------------------------
/uva/images/introduction/spring-break-2014-uva.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/uva/images/introduction/spring-break-2014-uva.png
--------------------------------------------------------------------------------
/uva/images/introduction/spring-break-2015-student.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/uva/images/introduction/spring-break-2015-student.png
--------------------------------------------------------------------------------
/uva/images/introduction/spring-break-2015-uva.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/uva/images/introduction/spring-break-2015-uva.png
--------------------------------------------------------------------------------
/uva/images/introduction/spring-break-2016-student.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/uva/images/introduction/spring-break-2016-student.png
--------------------------------------------------------------------------------
/uva/images/introduction/spring-break-2016-uva.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/uva/images/introduction/spring-break-2016-uva.png
--------------------------------------------------------------------------------
/uva/images/introduction/spring-break-2017-student.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/uva/images/introduction/spring-break-2017-student.png
--------------------------------------------------------------------------------
/uva/images/introduction/spring-break-2017-uva.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/uva/images/introduction/spring-break-2017-uva.png
--------------------------------------------------------------------------------
/uva/images/introduction/thanksgiving-2014-student.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/uva/images/introduction/thanksgiving-2014-student.png
--------------------------------------------------------------------------------
/uva/images/introduction/thanksgiving-2014-uva.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/uva/images/introduction/thanksgiving-2014-uva.png
--------------------------------------------------------------------------------
/uva/images/introduction/thanksgiving-2015-student.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/uva/images/introduction/thanksgiving-2015-student.png
--------------------------------------------------------------------------------
/uva/images/introduction/thanksgiving-2015-uva.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/uva/images/introduction/thanksgiving-2015-uva.png
--------------------------------------------------------------------------------
/uva/images/introduction/thanksgiving-2016-student.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/uva/images/introduction/thanksgiving-2016-student.png
--------------------------------------------------------------------------------
/uva/images/introduction/thanksgiving-2016-uva.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/uva/images/introduction/thanksgiving-2016-uva.png
--------------------------------------------------------------------------------
/uva/images/magic-8-ball.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/uva/images/magic-8-ball.png
--------------------------------------------------------------------------------
/uva/lectures/.gitignore:
--------------------------------------------------------------------------------
1 | resize/
2 |
--------------------------------------------------------------------------------
/uva/lectures/bloomfield-fall-2020/lec02/helloworld.cpp:
--------------------------------------------------------------------------------
1 | // C++
2 | #include
3 | using namespace std;
4 |
5 | int max (int a, int b);
6 |
7 | int main() {
8 | cout << "Hello World" << endl;
9 |
10 | cout << max (3, 4) << endl;
11 |
12 | return 0;
13 | }
14 |
15 |
16 | int max (int a, int b) {
17 | if ( a > b )
18 | return a;
19 | else
20 | return b;
21 | }
22 |
23 |
--------------------------------------------------------------------------------
/uva/lectures/bloomfield-fall-2020/lec03/item.cpp:
--------------------------------------------------------------------------------
1 | #include
2 | using namespace std;
3 |
4 | #include "item.h"
5 |
6 | int Item::x = 9;
7 |
8 | int Item::getID() const {
9 | return id;
10 | }
11 |
12 |
13 | void Item::setID (int i) {
14 | id = i;
15 | }
16 |
--------------------------------------------------------------------------------
/uva/lectures/bloomfield-fall-2020/lec03/item.h:
--------------------------------------------------------------------------------
1 | #ifndef ITEM_H
2 | #define ITEM_H
3 |
4 | //#include
5 | //using namespace std;
6 |
7 | class Item {
8 |
9 | public:
10 | int getID() const;
11 | void setID (int i);
12 |
13 |
14 | private:
15 | int id;
16 | const float f = 9.9;
17 | double price;
18 | static int x;
19 | };
20 |
21 | #endif
22 |
--------------------------------------------------------------------------------
/uva/lectures/bloomfield-fall-2020/lec03/main.cpp:
--------------------------------------------------------------------------------
1 | #include
2 |
3 | #include "item.h"
4 |
5 | using namespace std;
6 |
7 |
8 | int main() {
9 | cout << "Hello world" << endl;
10 | Item i; // = new Item();
11 | i.setID (1234);
12 | cout << "ID of i: " << i.getID() << endl;
13 | Item j = i;
14 | cout << "ID of i: " << i.getID() << endl;
15 | cout << "ID of j: " << j.getID() << endl;
16 | j.setID (7);
17 | cout << "ID of i: " << i.getID() << endl;
18 | cout << "ID of j: " << j.getID() << endl;
19 | return 0;
20 | }
21 |
--------------------------------------------------------------------------------
/uva/lectures/bloomfield-fall-2020/lec05/dynmem.cpp:
--------------------------------------------------------------------------------
1 | #include
2 | using namespace std;
3 |
4 | int main() {
5 | int x[6];
6 | int i;
7 |
8 | cout << "enter 6 integer values:" << endl;
9 | for ( i = 0; i < 6; i++ )
10 | cin >> x[i];
11 |
12 | for ( i = 0; i < 6; i++ )
13 | cout << x[i] << endl;
14 |
15 | int* ages = new int[5];
16 | int a[10];
17 |
18 | return 0;
19 | }
20 |
--------------------------------------------------------------------------------
/uva/lectures/bloomfield-fall-2020/lec06/danglingptrs.cpp:
--------------------------------------------------------------------------------
1 | #include
2 | using namespace std;
3 |
4 | class ListNode {
5 | public:
6 | ListNode* next, *prev;
7 | int value;
8 | };
9 |
10 | int main() {
11 |
12 | ListNode l;
13 | ListNode* n = new ListNode();
14 |
15 | l.value = 100;
16 | (*n).value = 200;
17 | n->value = 200;
18 |
19 | cout << n->value << endl;
20 |
21 | delete n;
22 |
23 | cout << "dangling pointer: " << n->value << endl;
24 |
25 | n = nullptr;
26 | n = &l;
27 |
28 | cout << n->value << endl;
29 |
30 | return 0;
31 | }
32 |
--------------------------------------------------------------------------------
/uva/lectures/bloomfield-fall-2020/lec06/parameters.cpp:
--------------------------------------------------------------------------------
1 | #include
2 | using namespace std;
3 |
4 | void foo (int* a) {
5 | *a = 5;
6 | }
7 |
8 | int main() {
9 | int x = 10;
10 | foo (&x);
11 | cout << x << endl;
12 | return 0;
13 | }
14 |
--------------------------------------------------------------------------------
/uva/lectures/bloomfield-fall-2020/lec16/pseudo-code.txt:
--------------------------------------------------------------------------------
1 | fall 2018, exam 2, question 8
2 |
3 |
4 | easy, but modifies tree:
5 |
6 | 1. find max of tree, put into $m$ ($m=14$)
7 | 2. delete $m$ from tree
8 | 3. find max of updated tree, put into $a$ ($a=12$)
9 | 4. insert $m$ back into tree
10 |
11 |
12 | more better algorithm:
13 |
14 | if ( numNodes <= 1 )
15 | throw error
16 | start at root
17 | find max value $m$
18 | if ( m has no left subtree )
19 | return m's parent's value
20 | if ( m has a left subtree )
21 | return findMax of left subtree
22 |
--------------------------------------------------------------------------------
/uva/lectures/bloomfield-fall-2020/lec36/.gitignore:
--------------------------------------------------------------------------------
1 | bfs
2 |
--------------------------------------------------------------------------------
/uva/lectures/bloomfield-fall-2020/lec36/Makefile:
--------------------------------------------------------------------------------
1 | main:
2 | clang++ -g -fsanitize=address -Wall -o bfs bfs.cpp
3 |
4 | run:
5 | ./bfs < bfs.in
6 |
--------------------------------------------------------------------------------
/uva/lectures/bloomfield-fall-2020/lec36/bfs.in:
--------------------------------------------------------------------------------
1 | 10
2 | 14
3 | 0 1
4 | 0 2
5 | 1 3
6 | 1 4
7 | 2 1
8 | 2 3
9 | 2 5
10 | 3 6
11 | 4 6
12 | 4 7
13 | 5 4
14 | 6 7
15 | 1 8
16 | 2 9
17 | 2
18 | 8
19 | 9
20 |
21 |
--------------------------------------------------------------------------------
/uva/lectures/bloomfield-fall-2020/lec37/3x3-grid.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/uva/lectures/bloomfield-fall-2020/lec37/3x3-grid.jpg
--------------------------------------------------------------------------------
/uva/lectures/bloomfield-fall-2021/2021-09-24 14.52.12.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/uva/lectures/bloomfield-fall-2021/2021-09-24 14.52.12.jpg
--------------------------------------------------------------------------------
/uva/lectures/bloomfield-fall-2021/2021-09-29 14.49.02.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/uva/lectures/bloomfield-fall-2021/2021-09-29 14.49.02.jpg
--------------------------------------------------------------------------------
/uva/lectures/bloomfield-fall-2021/2021-09-29 14.49.10.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/uva/lectures/bloomfield-fall-2021/2021-09-29 14.49.10.jpg
--------------------------------------------------------------------------------
/uva/lectures/bloomfield-fall-2021/2021-10-13 13.57.26.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/uva/lectures/bloomfield-fall-2021/2021-10-13 13.57.26.jpg
--------------------------------------------------------------------------------
/uva/lectures/bloomfield-fall-2021/2021-10-15 14.53.43.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/uva/lectures/bloomfield-fall-2021/2021-10-15 14.53.43.jpg
--------------------------------------------------------------------------------
/uva/lectures/bloomfield-fall-2021/2021-10-18 13.51.27.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/uva/lectures/bloomfield-fall-2021/2021-10-18 13.51.27.jpg
--------------------------------------------------------------------------------
/uva/lectures/bloomfield-fall-2021/2021-10-20 13.53.21.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/uva/lectures/bloomfield-fall-2021/2021-10-20 13.53.21.jpg
--------------------------------------------------------------------------------
/uva/lectures/bloomfield-fall-2021/2021-10-29 14.55.34.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/uva/lectures/bloomfield-fall-2021/2021-10-29 14.55.34.jpg
--------------------------------------------------------------------------------
/uva/lectures/bloomfield-fall-2021/2021-11-05 13.57.59.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/uva/lectures/bloomfield-fall-2021/2021-11-05 13.57.59.jpg
--------------------------------------------------------------------------------
/uva/lectures/bloomfield-fall-2021/2021-11-08 13.55.41.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/uva/lectures/bloomfield-fall-2021/2021-11-08 13.55.41.jpg
--------------------------------------------------------------------------------
/uva/lectures/bloomfield-fall-2021/2021-11-17 13.54.22.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/uva/lectures/bloomfield-fall-2021/2021-11-17 13.54.22.jpg
--------------------------------------------------------------------------------
/uva/lectures/bloomfield-fall-2021/2021-11-19 13.09.09.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/uva/lectures/bloomfield-fall-2021/2021-11-19 13.09.09.jpg
--------------------------------------------------------------------------------
/uva/lectures/bloomfield-fall-2021/2021-11-19 13.28.02.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/uva/lectures/bloomfield-fall-2021/2021-11-19 13.28.02.jpg
--------------------------------------------------------------------------------
/uva/lectures/bloomfield-fall-2021/2021-11-19 13.49.54.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/uva/lectures/bloomfield-fall-2021/2021-11-19 13.49.54.jpg
--------------------------------------------------------------------------------
/uva/lectures/bloomfield-fall-2021/2021-11-22 13.32.04.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/uva/lectures/bloomfield-fall-2021/2021-11-22 13.32.04.jpg
--------------------------------------------------------------------------------
/uva/lectures/bloomfield-fall-2021/2021-11-22 14.13.47.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/uva/lectures/bloomfield-fall-2021/2021-11-22 14.13.47.jpg
--------------------------------------------------------------------------------
/uva/lectures/bloomfield-fall-2021/2021-11-29 13.42.20.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/uva/lectures/bloomfield-fall-2021/2021-11-29 13.42.20.jpg
--------------------------------------------------------------------------------
/uva/lectures/bloomfield-fall-2021/2021-12-01 14.51.24.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/uva/lectures/bloomfield-fall-2021/2021-12-01 14.51.24.jpg
--------------------------------------------------------------------------------
/uva/lectures/bloomfield-spring-2021/lec02/helloworld.cpp:
--------------------------------------------------------------------------------
1 | // Hello World!
2 |
3 | #include
4 | using namespace std;
5 |
6 |
7 | int max (int a, int b);
8 |
9 |
10 | int main() {
11 | int x = 7;
12 | cout << "Hello world" << endl;
13 |
14 | cout << max (1, 2) << endl;
15 | cout << x << endl;
16 |
17 | if ( (x = 0) ) // I is a bad programmer
18 | cout << "true" << endl;
19 | else
20 | cout << "false" << endl;
21 |
22 | cout << x << endl;
23 | return 0;
24 | }
25 |
26 |
27 | int max (int a, int b) {
28 | if ( a > b )
29 | return a;
30 | else
31 | return b;
32 | }
33 |
--------------------------------------------------------------------------------
/uva/lectures/bloomfield-spring-2021/lec03/item.cpp:
--------------------------------------------------------------------------------
1 | #include
2 | using namespace std;
3 |
4 | #include "item.h"
5 |
6 | const double Item::pi = 3.14159265358979;
7 |
8 | int Item::getID() const {
9 | return id;
10 | }
11 |
12 | void Item::setID (int i) {
13 | id = i;
14 | }
15 |
--------------------------------------------------------------------------------
/uva/lectures/bloomfield-spring-2021/lec03/item.h:
--------------------------------------------------------------------------------
1 | #ifndef ITEM_H
2 | #define ITEM_H
3 |
4 | class Item {
5 |
6 | public:
7 | int getID() const;
8 | void setID (int i);
9 |
10 | private:
11 | int id;
12 | double price;
13 | const float f = 9.9;
14 | static const double pi;
15 | };
16 |
17 | #endif
18 |
--------------------------------------------------------------------------------
/uva/lectures/bloomfield-spring-2021/lec03/main.cpp:
--------------------------------------------------------------------------------
1 | #include
2 | using namespace std;
3 |
4 | #include "item.h"
5 |
6 | int main() {
7 | cout << "Hello world" << endl;
8 | Item i;
9 | i.setID (1234);
10 | cout << "ID of i: " << i.getID() << endl;
11 | Item j = i;
12 | cout << "ID of i: " << i.getID() << endl;
13 | cout << "ID of j: " << j.getID() << endl;
14 | j.setID (7);
15 | cout << "ID of i: " << i.getID() << endl;
16 | cout << "ID of j: " << j.getID() << endl;
17 | return 0;
18 | }
19 |
--------------------------------------------------------------------------------
/uva/lectures/bloomfield-spring-2021/lec05/notswap.cpp:
--------------------------------------------------------------------------------
1 | #include
2 | using namespace std;
3 |
4 | void swap (int x, int y) {
5 | int temp = x;
6 | x = y;
7 | y = temp;
8 | }
9 |
10 | int main() {
11 | int a = 0;
12 | int b = 3;
13 | cout << "Before swap(): a: " << a << ", b: "
14 | << b << endl;
15 | swap (b, a);
16 | cout << "After swap(): a: " << a << ", b: "
17 | << b << endl;
18 | return 0;
19 | }
20 |
--------------------------------------------------------------------------------
/uva/lectures/bloomfield-spring-2021/lec06/stuff.cpp:
--------------------------------------------------------------------------------
1 | #include
2 | using namespace std;
3 |
4 | class Foo {
5 | public:
6 | int x = 7;
7 | Foo() {
8 | int x = 77;
9 | cout << x << endl;
10 | cout << this->x << endl;
11 | }
12 | Foo (int x) {
13 | this->x = x;
14 | cout << x << endl;
15 | }
16 | };
17 |
18 | int main() {
19 | Foo f;
20 | //Foo g();
21 | Foo h (3);
22 |
23 | Foo* i = new Foo;
24 | Foo* j = new Foo();
25 | Foo* k = new Foo (3);
26 |
27 | return 0;
28 | }
29 |
--------------------------------------------------------------------------------
/uva/lectures/bloomfield-spring-2021/lec16/exam2-f18-q8.txt:
--------------------------------------------------------------------------------
1 | Fall 2018, exam 2, question 8
2 |
3 |
4 | Easier way to do this:
5 |
6 | 1. find maximum element $m$
7 | 2. remove maximum $m$
8 | 3. find new maximum element $a$
9 | 4. insert $m$ back into tree
10 |
11 |
12 | More better algorithm:
13 |
14 | if numNodes <= 1:
15 | throw error
16 | find max value $m$
17 | - two possible cases: $m$ has no children (leaf) or 1 (left) child
18 | if $m$ has no children (is a leaf):
19 | - return parent of $m$
20 | if $m$ has one (left) child:
21 | - return max of left subtree
22 |
23 |
--------------------------------------------------------------------------------
/uva/lectures/bloomfield-spring-2021/lec20/Makefile:
--------------------------------------------------------------------------------
1 | CXX = clang++ -Wall -Wno-unused-private-field
2 | OFILES = List.o ListItr.o ListNode.o ListTest.o
3 |
4 | .PHONY: clean
5 |
6 | main: $(OFILES)
7 | $(CXX) $(OFILES)
8 |
9 | clean:
10 | /bin/rm -f *.o *~ a.out
11 |
12 | # output from `clang++ -MM *.cpp`
13 | List.o: List.cpp List.h ListNode.h ListItr.h
14 | ListItr.o: ListItr.cpp ListItr.h ListNode.h List.h
15 | ListNode.o: ListNode.cpp ListNode.h
16 | ListTest.o: ListTest.cpp List.h ListNode.h ListItr.h
17 |
--------------------------------------------------------------------------------
/uva/lectures/bloomfield-spring-2021/lec36/.gitignore:
--------------------------------------------------------------------------------
1 | bfs
2 |
--------------------------------------------------------------------------------
/uva/lectures/bloomfield-spring-2021/lec36/Makefile:
--------------------------------------------------------------------------------
1 | main:
2 | clang++ -g -fsanitize=address -Wall -o bfs bfs.cpp
3 |
4 | run:
5 | ./bfs < bfs.in
6 |
--------------------------------------------------------------------------------
/uva/lectures/bloomfield-spring-2021/lec36/bfs.in:
--------------------------------------------------------------------------------
1 | 10
2 | 14
3 | 0 1
4 | 0 2
5 | 1 3
6 | 1 4
7 | 2 1
8 | 2 3
9 | 2 5
10 | 3 6
11 | 4 6
12 | 4 7
13 | 5 4
14 | 6 7
15 | 1 8
16 | 2 9
17 | 1
18 | 5
19 |
--------------------------------------------------------------------------------
/uva/lectures/bloomfield-spring-2021/lec38/kruskals.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | image overlay
5 |
27 |
28 |
29 |
30 |

31 |

32 |
33 |
34 |
35 |
--------------------------------------------------------------------------------
/uva/lectures/bloomfield-spring-2021/lec38/prims.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | image overlay
5 |
27 |
28 |
29 |
30 |

31 |

32 |
33 |
34 |
35 |
--------------------------------------------------------------------------------
/uva/lectures/index.md:
--------------------------------------------------------------------------------
1 | Lecture content, spring 2022
2 | ============================
3 |
4 | [Go up to the CS 2150 page](../index.html) ([md](../index.md))
5 |
6 | This page contains the material discussed during lecture times, and really just consists of pictures of the chalkboard.
7 |
8 | ### Lecture period content
9 |
10 | None yet!
11 |
--------------------------------------------------------------------------------
/uva/old/grades-fall-2021.md:
--------------------------------------------------------------------------------
1 | Grading Explanations, Fall 2021
2 | =================================
3 |
4 | [Go up to the CS 2150 page](index.html) ([md](index.md))
5 |
6 |
7 |
8 |
9 | As per the [syllabus](syllabus.html) ([md](syllabus.md)), the grades were computed by:
10 |
11 | - Laboratories (45%)
12 | - Two midterms (30%; 15% each)
13 | - Final exam (25%)
14 |
15 | ## The Process of Grade Determination
16 |
17 | 
18 |
--------------------------------------------------------------------------------
/uva/old/grades-spring-2021.md:
--------------------------------------------------------------------------------
1 | Grading Explanations, Spring 2021
2 | =================================
3 |
4 | [Go up to the CS 2150 page](index.html) ([md](index.md))
5 |
6 |
7 |
8 |
9 | As per the [syllabus](syllabus.html) ([md](syllabus.md)), the grades were computed by:
10 |
11 | - Laboratories (70%)
12 | - Final exam (30%)
13 |
14 | ## The Process of Grade Determination
15 |
16 | 
17 |
--------------------------------------------------------------------------------
/uva/old/grades-spring-2022.md:
--------------------------------------------------------------------------------
1 | Grading Explanations, Spring 2022
2 | =================================
3 |
4 | [Go up to the CS 2150 page](index.html) ([md](index.md))
5 |
6 |
7 |
8 |
9 | As per the [syllabus](syllabus.html) ([md](syllabus.md)), the grades were computed by:
10 |
11 | - Laboratories (45%)
12 | - Two midterms (30%; 15% each)
13 | - Final exam (25%)
14 |
15 | ## The Process of Grade Determination
16 |
17 | 
18 |
--------------------------------------------------------------------------------
/uva/old/unix-honor-pledge-f14.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/uva/old/unix-honor-pledge-f14.pdf
--------------------------------------------------------------------------------
/uva/old/unix-honor-pledge-f15.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/uva/old/unix-honor-pledge-f15.pdf
--------------------------------------------------------------------------------
/uva/old/unix-honor-pledge-f17.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/uva/old/unix-honor-pledge-f17.pdf
--------------------------------------------------------------------------------
/uva/old/unix-honor-pledge-f18.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/uva/old/unix-honor-pledge-f18.pdf
--------------------------------------------------------------------------------
/uva/old/unix-honor-pledge-f19.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/uva/old/unix-honor-pledge-f19.pdf
--------------------------------------------------------------------------------
/uva/old/unix-honor-pledge-s14.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/uva/old/unix-honor-pledge-s14.pdf
--------------------------------------------------------------------------------
/uva/old/unix-honor-pledge-s15.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/uva/old/unix-honor-pledge-s15.pdf
--------------------------------------------------------------------------------
/uva/old/unix-honor-pledge-s16.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaronbloomfield/pdr/c71b0649d2b3cb6e0cf9f91aec09a7666ae7471c/uva/old/unix-honor-pledge-s16.pdf
--------------------------------------------------------------------------------