Skip to content

Commit 2ca9d40

Browse files
committed
added big-o notation chart - chapter 11
1 parent 7db601d commit 2ca9d40

File tree

3 files changed

+231
-0
lines changed

3 files changed

+231
-0
lines changed

chapter11/bigOChart/chart.js

+37
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
google.load('visualization', '1.0', {'packages':['corechart']});
2+
google.setOnLoadCallback(drawChart);
3+
4+
function drawChart() {
5+
6+
var data = new google.visualization.DataTable();
7+
data.addColumn('string', 'n');
8+
data.addColumn('number', 'O(1)');
9+
data.addColumn('number', 'O(log n)');
10+
data.addColumn('number', 'O(n)');
11+
data.addColumn('number', 'O(n log n)');
12+
data.addColumn('number', 'O(n^2)');
13+
data.addColumn('number', 'O(2^n)');
14+
15+
for (var i = 0; i <= 30; i++) {
16+
data.addRow([i+'', 1, Math.log(i), i, Math.log(i)*i, Math.pow(i,2), Math.pow(2,i)]);
17+
}
18+
19+
var options = {'title':'Big O Notation Complexity Chart',
20+
'width':700,
21+
'height':600,
22+
'backgroundColor':{stroke:'#CCC',strokeWidth:1},
23+
'curveType':'function',
24+
'hAxis':{
25+
title:'Elements (n)',
26+
showTextEvery:5
27+
},
28+
'vAxis':{
29+
title:'Operations',
30+
viewWindowMode:'explicit',
31+
viewWindow:{min:0,max:450}
32+
}
33+
};
34+
35+
var chart = new google.visualization.LineChart(document.getElementById('chart_div'));
36+
chart.draw(data, options);
37+
}

chapter11/bigOChart/index.html

+14
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
<!DOCTYPE html>
2+
<html>
3+
<head lang="en">
4+
<meta charset="UTF-8">
5+
<style>
6+
body { background-color: #DDDDDD; font: 30px sans-serif; }
7+
</style>
8+
<script type="text/javascript" src="https://www.google.com/jsapi"></script>
9+
<script type="text/javascript" src="chart.js"></script>
10+
</head>
11+
<body>
12+
<div id='chart_div'></div>
13+
</body>
14+
</html>

npm-debug.log

+180
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,180 @@
1+
0 info it worked if it ends with ok
2+
1 verbose cli [ 'node', '/usr/local/bin/npm', 'install', 'http-server', '-g' ]
3+
2 info using npm@1.4.23
4+
3 info using node@v0.10.31
5+
4 verbose cache add [ 'http-server', null ]
6+
5 verbose cache add name=undefined spec="http-server" args=["http-server",null]
7+
6 verbose parsed url { protocol: null,
8+
6 verbose parsed url slashes: null,
9+
6 verbose parsed url auth: null,
10+
6 verbose parsed url host: null,
11+
6 verbose parsed url port: null,
12+
6 verbose parsed url hostname: null,
13+
6 verbose parsed url hash: null,
14+
6 verbose parsed url search: null,
15+
6 verbose parsed url query: null,
16+
6 verbose parsed url pathname: 'http-server',
17+
6 verbose parsed url path: 'http-server',
18+
6 verbose parsed url href: 'http-server' }
19+
7 silly lockFile ed608307-http-server http-server
20+
8 verbose lock http-server /Users/loiane/.npm/ed608307-http-server.lock
21+
9 silly lockFile ed608307-http-server http-server
22+
10 silly lockFile ed608307-http-server http-server
23+
11 verbose addNamed [ 'http-server', '' ]
24+
12 verbose addNamed [ null, '*' ]
25+
13 silly lockFile 550353c6-http-server http-server@
26+
14 verbose lock http-server@ /Users/loiane/.npm/550353c6-http-server.lock
27+
15 silly addNameRange { name: 'http-server', range: '*', hasData: false }
28+
16 verbose request where is /http-server
29+
17 verbose request registry https://registry.npmjs.org/
30+
18 verbose request id 5de596c601e747df
31+
19 verbose url raw /http-server
32+
20 verbose url resolving [ 'https://registry.npmjs.org/', './http-server' ]
33+
21 verbose url resolved https://registry.npmjs.org/http-server
34+
22 verbose request where is https://registry.npmjs.org/http-server
35+
23 info trying registry request attempt 1 at 16:26:40
36+
24 http GET https://registry.npmjs.org/http-server
37+
25 http 200 https://registry.npmjs.org/http-server
38+
26 silly registry.get cb [ 200,
39+
26 silly registry.get { date: 'Mon, 01 Sep 2014 19:26:41 GMT',
40+
26 silly registry.get server: 'CouchDB/1.5.0 (Erlang OTP/R16B03)',
41+
26 silly registry.get etag: '"GRUZZAK9N6WU29IC3EFS78GW"',
42+
26 silly registry.get 'content-type': 'application/json',
43+
26 silly registry.get 'cache-control': 'max-age=60',
44+
26 silly registry.get 'content-length': '42618',
45+
26 silly registry.get 'accept-ranges': 'bytes',
46+
26 silly registry.get via: '1.1 varnish',
47+
26 silly registry.get age: '942',
48+
26 silly registry.get 'x-served-by': 'cache-iad2134-IAD',
49+
26 silly registry.get 'x-cache': 'HIT',
50+
26 silly registry.get 'x-cache-hits': '1',
51+
26 silly registry.get 'x-timer': 'S1409599601.088721,VS0,VE16',
52+
26 silly registry.get vary: 'Accept',
53+
26 silly registry.get 'keep-alive': 'timeout=10, max=50',
54+
26 silly registry.get connection: 'Keep-Alive' } ]
55+
27 silly addNameRange number 2 { name: 'http-server', range: '*', hasData: true }
56+
28 silly addNameRange versions [ 'http-server',
57+
28 silly addNameRange [ '0.1.0',
58+
28 silly addNameRange '0.1.1',
59+
28 silly addNameRange '0.1.3',
60+
28 silly addNameRange '0.2.1',
61+
28 silly addNameRange '0.2.2',
62+
28 silly addNameRange '0.2.3',
63+
28 silly addNameRange '0.2.4',
64+
28 silly addNameRange '0.2.5',
65+
28 silly addNameRange '0.2.6',
66+
28 silly addNameRange '0.2.9',
67+
28 silly addNameRange '0.3.0',
68+
28 silly addNameRange '0.4.0',
69+
28 silly addNameRange '0.4.1',
70+
28 silly addNameRange '0.5.0',
71+
28 silly addNameRange '0.5.1',
72+
28 silly addNameRange '0.5.2',
73+
28 silly addNameRange '0.5.3',
74+
28 silly addNameRange '0.5.5',
75+
28 silly addNameRange '0.6.0',
76+
28 silly addNameRange '0.6.1' ] ]
77+
29 verbose addNamed [ 'http-server', '0.6.1' ]
78+
30 verbose addNamed [ '0.6.1', '0.6.1' ]
79+
31 silly lockFile 1e2b2518-http-server-0-6-1 http-server@0.6.1
80+
32 verbose lock http-server@0.6.1 /Users/loiane/.npm/1e2b2518-http-server-0-6-1.lock
81+
33 silly lockFile c3f4b4b6-ttp-server-http-server-0-6-1-tgz https://registry.npmjs.org/http-server/-/http-server-0.6.1.tgz
82+
34 verbose lock https://registry.npmjs.org/http-server/-/http-server-0.6.1.tgz /Users/loiane/.npm/c3f4b4b6-ttp-server-http-server-0-6-1-tgz.lock
83+
35 verbose addRemoteTarball [ 'https://registry.npmjs.org/http-server/-/http-server-0.6.1.tgz',
84+
35 verbose addRemoteTarball '06fce65cf2bd4132a578bdac62ffacb97d613981' ]
85+
36 info retry fetch attempt 1 at 16:26:42
86+
37 verbose fetch to= /var/folders/p6/h5zxx5c5153gfhgsvg1_s6n80000gn/T/npm-4783-wjg257Iq/registry.npmjs.org/http-server/-/http-server-0.6.1.tgz
87+
38 http GET https://registry.npmjs.org/http-server/-/http-server-0.6.1.tgz
88+
39 http 200 https://registry.npmjs.org/http-server/-/http-server-0.6.1.tgz
89+
40 silly lockFile c3f4b4b6-ttp-server-http-server-0-6-1-tgz https://registry.npmjs.org/http-server/-/http-server-0.6.1.tgz
90+
41 silly lockFile c3f4b4b6-ttp-server-http-server-0-6-1-tgz https://registry.npmjs.org/http-server/-/http-server-0.6.1.tgz
91+
42 silly lockFile 1e2b2518-http-server-0-6-1 http-server@0.6.1
92+
43 silly lockFile 1e2b2518-http-server-0-6-1 http-server@0.6.1
93+
44 silly lockFile 550353c6-http-server http-server@
94+
45 silly lockFile 550353c6-http-server http-server@
95+
46 silly resolved [ { name: 'http-server',
96+
46 silly resolved version: '0.6.1',
97+
46 silly resolved author: { name: 'Nodejitsu', email: 'support@nodejitsu.com' },
98+
46 silly resolved description: 'a simple zero-configuration command-line http server',
99+
46 silly resolved main: './lib/http-server',
100+
46 silly resolved repository:
101+
46 silly resolved { type: 'git',
102+
46 silly resolved url: 'git://github.com/nodeapps/http-server.git' },
103+
46 silly resolved keywords: [ 'cli', 'command' ],
104+
46 silly resolved scripts:
105+
46 silly resolved { start: 'node ./bin/http-server',
106+
46 silly resolved test: 'vows --spec --isolate' },
107+
46 silly resolved contributors:
108+
46 silly resolved [ [Object],
109+
46 silly resolved [Object],
110+
46 silly resolved [Object],
111+
46 silly resolved [Object],
112+
46 silly resolved [Object],
113+
46 silly resolved [Object],
114+
46 silly resolved [Object],
115+
46 silly resolved [Object] ],
116+
46 silly resolved dependencies:
117+
46 silly resolved { colors: '0.6.x',
118+
46 silly resolved optimist: '0.5.x',
119+
46 silly resolved union: '0.3.x',
120+
46 silly resolved ecstatic: '0.4.x',
121+
46 silly resolved portfinder: '0.2.x',
122+
46 silly resolved opener: '~1.3.0' },
123+
46 silly resolved devDependencies: { vows: '0.7.x', request: '2.21.x' },
124+
46 silly resolved bugs: { url: 'https://github.com/nodeapps/http-server/issues' },
125+
46 silly resolved licenses: [ [Object] ],
126+
46 silly resolved analyze: false,
127+
46 silly resolved preferGlobal: 'true',
128+
46 silly resolved bin: { 'http-server': './bin/http-server' },
129+
46 silly resolved readme: '# http-server: a command-line http server\n\n`http-server` is a simple, zero-configuration command-line http server. It is powerful enough for production usage, but it\'s simple and hackable enough to be used for testing, local development, and learning.\n\n![](https://github.com/nodeapps/http-server/raw/master/screenshots/public.png)\n\n# Installing globally:\n\nInstallation via `npm`. If you don\'t have `npm` yet:\n\n curl https://npmjs.org/install.sh | sh\n \nOnce you have `npm`:\n\n npm install http-server -g\n \nThis will install `http-server` globally so that it may be run from the command line.\n\n## Usage:\n\n http-server [path] [options]\n\n`[path]` defaults to `./public` if the folder exists, and `./` otherwise.\n\n# Installing as a node app\n\n mkdir myapp\n cd myapp/\n jitsu install http-server\n\n*If you do not have `jitsu` installed you can install it via `npm install jitsu -g`*\n\n## Usage\n\n### Starting http-server locally\n\n node bin/http-server\n\n*Now you can visit http://localhost:8080 to view your server*\n\n### Deploy http-server to nodejitsu\n\n jitsu deploy\n\n*You will now be prompted for a `subdomain` to deploy your application on*\n\n## Available Options:\n\n`-p` Port to listen for connections on (defaults to 8080)\n\n`-a` Address to bind to (defaults to \'0.0.0.0\')\n\n`-d` Show directory listings (defaults to \'True\')\n\n`-i` Display autoIndex (defaults to \'True\')\n\n`-e` or `--ext` Default file extension (defaults to \'html\')\n\n`-s` or `--silent` In silent mode, log messages aren\'t logged to the console.\n\n`-h` or `--help` Displays a list of commands and exits.\n\n`-c` Set cache time (in seconds) for cache-control max-age header, e.g. -c10 for 10 seconds. To disable caching, use -c-1.\n',
130+
46 silly resolved readmeFilename: 'README.md',
131+
46 silly resolved homepage: 'https://github.com/nodeapps/http-server',
132+
46 silly resolved _id: 'http-server@0.6.1',
133+
46 silly resolved dist:
134+
46 silly resolved { shasum: '06fce65cf2bd4132a578bdac62ffacb97d613981',
135+
46 silly resolved tarball: 'http://registry.npmjs.org/http-server/-/http-server-0.6.1.tgz' },
136+
46 silly resolved _from: 'http-server@',
137+
46 silly resolved _npmVersion: '1.3.14',
138+
46 silly resolved _npmUser: { name: 'indexzero', email: 'charlie.robbins@gmail.com' },
139+
46 silly resolved maintainers: [ [Object], [Object], [Object] ],
140+
46 silly resolved directories: {},
141+
46 silly resolved _shasum: '06fce65cf2bd4132a578bdac62ffacb97d613981',
142+
46 silly resolved _resolved: 'https://registry.npmjs.org/http-server/-/http-server-0.6.1.tgz' } ]
143+
47 info install http-server@0.6.1 into /usr/local/lib
144+
48 info installOne http-server@0.6.1
145+
49 verbose lib/node_modules/http-server unbuild
146+
50 verbose tar unpack /Users/loiane/.npm/http-server/0.6.1/package.tgz
147+
51 silly lockFile c2cc12bc-cal-lib-node-modules-http-server tar:///usr/local/lib/node_modules/http-server
148+
52 verbose lock tar:///usr/local/lib/node_modules/http-server /Users/loiane/.npm/c2cc12bc-cal-lib-node-modules-http-server.lock
149+
53 silly lockFile 57f8618f-pm-http-server-0-6-1-package-tgz tar:///Users/loiane/.npm/http-server/0.6.1/package.tgz
150+
54 verbose lock tar:///Users/loiane/.npm/http-server/0.6.1/package.tgz /Users/loiane/.npm/57f8618f-pm-http-server-0-6-1-package-tgz.lock
151+
55 silly gunzTarPerm modes [ '755', '644' ]
152+
56 error Error: EACCES, mkdir '/usr/local/lib/node_modules/http-server'
153+
56 error { [Error: EACCES, mkdir '/usr/local/lib/node_modules/http-server']
154+
56 error errno: 3,
155+
56 error code: 'EACCES',
156+
56 error path: '/usr/local/lib/node_modules/http-server',
157+
56 error fstream_type: 'Directory',
158+
56 error fstream_path: '/usr/local/lib/node_modules/http-server',
159+
56 error fstream_class: 'DirWriter',
160+
56 error fstream_stack:
161+
56 error [ '/usr/local/lib/node_modules/npm/node_modules/fstream/lib/dir-writer.js:36:23',
162+
56 error '/usr/local/lib/node_modules/npm/node_modules/mkdirp/index.js:46:53',
163+
56 error 'Object.oncomplete (fs.js:107:15)' ] }
164+
57 error Please try running this command again as root/Administrator.
165+
58 error System Darwin 13.3.0
166+
59 error command "node" "/usr/local/bin/npm" "install" "http-server" "-g"
167+
60 error cwd /Applications/XAMPP/xamppfiles/htdocs/javascript-datastructures-algorithms
168+
61 error node -v v0.10.31
169+
62 error npm -v 1.4.23
170+
63 error path /usr/local/lib/node_modules/http-server
171+
64 error fstream_path /usr/local/lib/node_modules/http-server
172+
65 error fstream_type Directory
173+
66 error fstream_class DirWriter
174+
67 error code EACCES
175+
68 error errno 3
176+
69 error stack Error: EACCES, mkdir '/usr/local/lib/node_modules/http-server'
177+
70 error fstream_stack /usr/local/lib/node_modules/npm/node_modules/fstream/lib/dir-writer.js:36:23
178+
70 error fstream_stack /usr/local/lib/node_modules/npm/node_modules/mkdirp/index.js:46:53
179+
70 error fstream_stack Object.oncomplete (fs.js:107:15)
180+
71 verbose exit [ 3, true ]

0 commit comments

Comments
 (0)