Copyright © 2012 by Gordon S. Novak Jr.
Permission is granted for individuals to make copies of these notes for personal use, or for instructors to make copies for classroom use.
Note: Some of these pages use math symbols. Microsoft Internet Explorer will not display the math symbols, but Firefox will.
== vs. .equals 34
a* 262
acyclic 241
adjacency list 245
adjacency matrix 246
adjacent 245
amortize 28
api 98
append 52
arc 241
array 82
array performance 231
arraylist 103
associative 272
avl tree 160
b tree 162
backtrack 141
bag 192
balanced parentheses 89
balanced tree 159
big o 11
bijective 269
binary heap 216
binary tree 159
binding 175
binding list 175
boolean matrix 246
boxed integer 31
boxed number 32
branching factor 141
bucket 207
buffer 293
buffering 293
cambridge polish 153
car 37
cartesian product 241
cdr 37
child 107
circular linked list 62
circular queue 96
circularly linked list 62
clustering 200
collision 206
commutative 272
comparator 224
comparison 224
complete 216
complexity 11
cons 36
constructive 54
critical path 250
cycle 241
dag 243
dense 244
depth-first search 141
deque 104
design pattern 43, 47, 75, 130
destructive 54
dfs 141
digraph 243
dijkstra algorithm 253
directed 243
directed acyclic graph 243
disk access 293
divide-and-conquer 233
doubly linked list 62
drop the ball 74
edge 241
efficiency 11
emit 283
equal 179
euclidean distance 278
exclusive or 202
extendible hashing 211
external sort 223
fair 94
fifo 94
functional program 271
garbage 32
geometric series 213
grammar 92
graph 241
greedy 253
half-adder 202
hash function 199
hash with buckets 207
hashing 199
hashset 192
heuristic 260
heuristic function 262
hill climbing 261
i/o buffer 293
immutable 32
in-place 226
infinite loop 41
infix 153
injective 269
inorder 153
integer vs. int 32
interior node 107
internal sort 223
introsort 237
introspective sort 237
inversion 226
isomorphism 273
language translation 189
leaf 107
length 39
lifo 79
linear probing 206
linkedlist 104
list interface 102
list iteration 40
list recursion 44
list tail recursion 46
listiterator 105
load balancing 294
load factor 206
local maximum 261
map 193
mapcan 275
mapcar 274
mapreduce 279
mapreduce key 282
matching 184
member 57
memoization 212
memory hierarchy 230
minimum spanning tree 256
nconc 55
nested tree recursion 182
node 241
nreverse 56
null dereference 79
object 31
on-line 226
one-to-one 269
onto 269
ontology 114
optimization 189
order 12
pagerank 288
parentheses 89
parse tree 110
parsing 191
partition 233
path 241
pattern matching 184
pattern-pair 188
percolate 218
performance 11
pert chart 250
pivot 233
pointer 31
pointer equality 34
polish 153
pop 79
postfix 153
predicate 57
prims algorithm 257
priority queue 214
push 79
queue 94
quicksort 233
radix sort 238
randomization 213
record 31
recursive case 42
red-black tree 159
reduce 277
reference 31
reference type 31
relaxation 288
reverse 48
root 107
routing 252
row-major order 232
runtime stack 85
search 141
self balancing tree 159
sentinel 80
separate chaining 207
set difference 61
shadow 86
shortest path 252
side effect 80
side-effect 271
simple path 241
simulation 273
sort 72
sorting 223
splay tree 159
stable 226
stack frame 85
state 141
substitution 176
surjective 269
symbol table 212
symmetric 246
syntax 92
tail recursion 47
tail recursive 46
taxonomy 113
topological sort 248
transformation 189
tree 107
tree recursion 130
tree rotation 161
treeset 192
two pointer queue 95
undirected 243
union 61
unparsing 191
vertex 241
well-founded ordering 41
xml 93
xor 202