absolute value... 5.1
abstract class... 20.8, 21.6, 21.11 defining... 21.7 implementing... 20.7, 21.8 Visitable... 21.6 abstract data type... see ADT abstract parameter... 12.10, 12.11 abstraction... 12.10 accessor function... 14.1, 14.4, 14.11 accessor method... 21.9 accumulator... 23.5, 23.10 ADT... 19.1, 19.6, 19.9, 22.1, 21 Priority Queue... 20.5, 20 Queue... 20.1, 20 Stack... 19.2 Tree... 21.9 algorithm... 9.11, 9.12 algorithm analysis... 22.2, 22.3 ambiguity... 1.4 fundamental theorem... 18.6 Heap... 22.9 heapsort... 22.10 mergesort... 22.3 Priority Queue... 22.5 argument... 3.3, 3.8, 3.12 base 60... 9.9 complex... 14.3, 15.4 floating-point... 3.1, 9.9 integer... 2.7 resizing... 19.8 ArrayIndexOutOfBounds... 19.8, 21.10 assert... 14.9 assignment... 2.4, 2.11, 6.1 atoi... 23.5 backslash... 23.4 big-O notation... 22.10 binary tree... 21.1, 21.12 bisection search... 12.9 body... 6.11 loop... 6.3 method... 21.7 bool... 5.8, 5.13 boolean... 5.5 bottom-up design... 10.8, 13.7, 13.11 break statement... 13.2, 23.2 circular... 20.4 bug... 1.3 C string... 23.2 c_str... 23.2 call... 3.12 call by reference... 8.10 Card... 12.2 cargo... 18.1, 18.12, 21.1 Cartesian coordinate... 14.3 character operator... 2.9 classification... 23.5 special sequence... 23.4 Chianti... 18.4 child node... 21.1, 21.12 cin... 8.11, 23.1 circular buffer... 20.4, 20.8 class... 14.1, 14.2, 14.11 class variable... 21.12 abstract... 21.6 Card... 12.2 Complex... 14.3, 15.4 Golfer... 20.7 Graphics... 15.2 Iterator... 21.11 LinkedList... 18.10 Message... 15.13 parent... 15.12 pstring... 7.12, 7.13 Stack... 19.3 Time... 3.10 Token... 21.8 Vector... 21.10 client... 19.1, 19.9, 21.6 client programs... 14.1 cmath... 3.3 collection... 18.3, 19.2, 20 comment... 1.5 comparable... 12.5 comparison operator... 5.5, 12.5 operator... 4.2 pstring... 7.13 compile... 1.1, 1.6 compile-time error... 1.3, 5.1 complete ordering... 12.5 complete tree... 22.6 Complex... 14.3, 15.4 complex number... 14.3, 15.4 complexity class... 22.10, 22.11 composition... 2.10, 2.11, 3.4, 5.3, 8.8, 12.1 concatenate... 7.16 concatentation... 23.5 ConcurrentModification... 21.11 conditional... 4.2, 4.10 alternative... 4.3 chained... 4.4, 4.10 nested... 4.5, 4.10 const... 15.13 constant time... 20.2, 20.8, 22.5, 22.10 constructor... 10.13, 11.11, 12.2, 13.3, 13.4, 13.8, 14.3, 15.3, 15.4, 23.6, 23.7, 10 convention... 13.1 to integer... 23.5 coordinate... 14.3 Cartesian... 14.3 polar... 14.3 correctness... 12.9 counter... 7.9, 7.16, 10.8 cout... 8.11, 23.1 current object... 11.2, 15.3, 15.11, 15.15 data encapsulation... 14.1, 14.8, 23.6 data structure... 23.6, 21 generic... 18.1, 19.3, 20.5 dead code... 5.1, 5.13 dealing... 13.9 debugging... 1.3, 1.6, 5.1 deck... 12.6, 12.10, 13.3 declaration... 2.3, 8.2 decrement... 7.9, 7.16, 9.4 default... 13.2 delete... 16.6, 16.8 delimiter... 19.5, 19.9 detail hiding... 14.1 deterministic... 10.5, 10.13 implementation... 22.1, 21 stack... 4.9, 5.10 state... 4.9, 5.10 distribution... 10.6 floating-point... 6.4 integer... 2.7 documentation... 18.11 dot notation... 15.6, 15.15 double (floating-point)... 3.1 Doyle, Arthur Conan... 1.3 dynamic memory allocation... 16.6, 16.8 efficiency... 13.10 element... 10.1, 10.13 embedded reference... 18.1, 21.1 encapsulation... 6.6, 6.8, 6.11, 7.9, 12.6, 19.1, 19.6, 21.6, 21.12 data... 14.1, 14.8, 23.6 functional... 14.1 encode... 12.2, 12.11 encrypt... 12.2 end of file... 23.2 enumerated type... 13.1 eof... 23.2 equals... 15.9 error... 1.6 compile-time... 1.3, 5.1 logic... 1.3 run-time... 1.3, 7.6, 9.5 ArrayIndexOutOfBounds... 19.8, 21.10 ConcurrentModification... 21.11 exit... 14.9 explicit... 15.15 expression... 2.7, 2.10, 2.11, 3.3, 3.4, 10.1 expression tree... 21.4 expressions... 19.4 factorial... 5.12 fava beans... 18.4 FIFO... 20.8, 20 file output... 23.3 input... 23.2 fill-in function... 9.7 find... 7.7, 12.8, 23.4 findBisect... 12.9 flag... 5.6, 14.3, 14.4 floating-point... 3.12 floating-point number... 3.1 for... 10.3 formal language... 1.4, 1.6 frabjuous... 5.10 fruitful function... 3.11, 5.1 function... 3.12, 6.7, 9.4 accessor... 14.1, 14.4 bool... 5.8 class... 15.2, 15.11 const... 15.13 definition... 3.5 fill-in... 9.7 for objects... 9.3 fruitful... 3.11, 5.1 helper... 13.7, 13.11 invoking... 15.10 main... 3.5 Math... 3.3 member... 11.1, 11.11, 13.5 modifier... 9.6, 15.7 multiple parameter... 3.10 nonmember... 11.1, 11.11 object... 15.2, 15.11 operator... 15.8 overloading... 15.11 pure... 15.5 pure function... 9.4 virtual... 15.13 void... 5.1 functional programming... 9.12, 15.1 generalization... 6.6, 6.10, 6.11, 7.9, 9.10 generic... 20.5 generic data structure... 18.1, 18.12, 19.3 getline... 23.2 Golfer... 20.7 good... 23.2 Graphics... 15.2 header file... 3.3, 23.1 Heap... 22.1 heap property... 22.6 analysis... 22.9 definition... 22.6 heapsort... 22.10, 22.11 height... 22.6 hello world... 1.5 helper function... 13.7, 13.11 helper method... 18.9, 22.2 high-level language... 1.1, 1.6 histogram... 10.10, 10.13 Holmes, Sherlock... 1.3 ifstream... 23.2 immutable... 7.12 implementation... 11.11, 14.1 Priority Queue... 20.6, 22.5 Queue... 20.1 Stack... 19.7 Tree... 21.1, 21.9 implicit... 15.15 increment... 7.9, 7.16, 9.4 incremental development... 5.2, 9.9 index... 7.5, 7.16, 10.1, 10.13, 12.6, 23.7 infinite list... 18.5 infinite loop... 6.3, 6.11, 23.2 infinite recursion... 4.8, 4.10, 12.9 infix... 19.4, 19.9, 21.4 inheritance... 15.12 initialization... 3.1, 3.12, 5.6, 5.13 inorder... 21.5, 21.12 keyboard... 8.11 instance... 9.12 instance variable... 8.12, 9.12, 13.3, 14.3, 15.4, 15.11 integer division... 2.7 interface... 11.11, 14.1, 20.8, 21.7 interpret... 1.1, 1.6 invariant... 14.8, 14.11, 18.11, 18.12, 19.8 invoke... 11.11 iostream... 3.3 isdigit... 23.5 isGreater... 12.5 istream... 23.1 iteration... 6.2, 6.11 Iterator class... 21.11 keyword... 2.6, 2.11 complete... 5.10 formal... 1.4 high-level... 1.1 low-level... 1.1 natural... 1.4 programming... 1.1, 15.1 safe... 1.3 leaf node... 21.1, 21.12 leap of faith... 5.11, 13.10, 18.4 pstring... 7.4 vector... 10.4 level... 21.1, 21.12 linear search... 12.8 linear time... 20.2, 20.8, 22.5, 22.10 link... 18.12 linked queue... 20.3, 20.8 LinkedList... 18.10 Linux... 1.3 list... 18.12, 18 as parameter... 18.3 infinite... 18.5 loop... 18.5 modifying... 18.8 printing... 18.3 printing backwards... 18.4 traversal... 18.3 traverse recursively... 18.4 well-formed... 18.11 literalness... 1.4 local variable... 6.9, 6.11 logarithm... 6.4 logarithmic time... 22.9, 22.10 logic error... 1.3 logical operator... 5.7 |
loop... 6.3, 6.11, 10.1
loop variable... 6.5, 6.9, 7.5, 10.1, 18.3 body... 6.3 counting... 7.9, 10.8 for... 10.3 in list... 18.5 infinite... 6.3, 6.11, 23.2 nested... 12.6, 13.4, 23.7 search... 12.8 low-level language... 1.1, 1.6 main... 3.5 map to... 12.2 mapping... 13.1 Math function... 3.3 acos... 5.1 exp... 5.1 fabs... 5.1 sin... 5.1 matrix... 23.7 mean... 10.6 member function... 11.1, 11.11, 13.5, 15.2, 15.15 mergesort... 13.10, 13.11, 22.3, 22.11 message... 15.13 accessor... 21.9 helper... 18.9 object... 18.7 private... 19.8 wrapper... 18.9 modifier... 9.6, 9.12, 15.7 modifying lists... 18.8 modulus... 4.1, 4.10 multiple assignment... 6.1 natural language... 1.4, 1.6 nested loop... 12.6 nested structure... 4.5, 5.7, 8.8, 12.1 new... 16.6, 16.8 newline... 2.1, 4.7 node... 18.1, 18.2, 18.12, 21.1 object method... 18.7 nondeterministic... 10.5 nonmember function... 11.1, 11.11, 15.2, 15.15 Null pointer... 16.5 object... 7.16, 9.3 object invariant... 18.11 current... 11.2, 15.3 output... 9.2 vector of... 12.6 object-oriented design... 15.14 object-oriented programming... 14.2, 15.1 ofstream... 23.3 operand... 2.7, 2.11 operator... 1.5, 2.7, 2.11 >>... 8.11 address of... 16.3, 16.8 assignment... 15.9 character... 2.9 comparison... 4.2, 5.5, 12.5 Complex... 15.5 conditional... 5.13 decrement... 7.10, 9.4 delete... 16.6, 16.8 equals... 15.9 increment... 7.10, 9.4 logical... 5.7, 5.13 modulus... 4.1 new... 16.6, 16.8 overloading... 15.8 order of growth... 22.10, 22.11 order of operations... 2.8 ordered set... 23.10 ordering... 12.5, 23.6 ostream... 23.1 output... 1.5, 2.1, 9.2, 14.5 overhead... 22.4, 22.11 overloading... 5.4, 5.13, 13.8, 15.11 parameter... 3.8, 3.12, 8.5 parameter passing... 8.6, 8.7, 8.10 abstract... 12.10 multiple... 3.10 parent class... 15.12 parent node... 21.1, 21.12 parse... 1.4, 1.6, 19.5, 19.9 parsing... 23.4 parsing number... 23.5 partial ordering... 12.5 pass by reference... 8.7, 8.12 pass by value... 8.6, 8.12 accumulator... 23.5, 23.10 counter... 10.8 eureka... 12.8 performance analysis... 20.2, 22.2 performance hazard... 20.2, 20.8 pi... 5.1 pmatrix... 23.7 poetry... 1.4 Point... 8.2 pointer... 11.2 pointers... 16.1, 16.8 assignment of... 16.4 declaration of... 16.2 Null... 16.5 returning... 16.7 polar coordinate... 14.3 portability... 1.1 postcondition... 14.9, 14.11, 19.8, 19.9 postfix... 19.4, 19.9, 21.4 postorder... 21.5, 21.12 precedence... 2.8 precondition... 14.9, 14.11, 18.5, 18.12, 19.8 predicate... 19.9 prefix... 21.12 preorder... 21.5, 21.12 Card... 12.3 vector of Cards... 12.7 printCard... 12.3 printDeck... 12.7, 13.5 priority queue... 20.8, 20 ADT... 20.5 array implementation... 20.6 sorted list implementation... 22.5 priority queueing... 20 private... 14.1, 14.2 private method... 19.8 function... 14.10 problem-solving... 1.6 procedural programming... 15.1 program development... 5.2, 6.11 bottom-up... 10.8, 13.7, 13.11 encapsulation... 6.8 incremental... 9.9 planning... 9.9 programming language... 1.1, 15.1 programming style... 9.8, 15.1 functional... 15.1 object-oriented... 15.1 procedural... 15.1 prose... 1.4 prototyping... 9.9 provider... 19.1, 19.9, 21.6 pseudocode... 13.6, 13.11, 22.3 pseudorandom... 10.13 pstring... 7.12, 7.13 length... 7.4 vector of... 12.3 public... 14.2 pure function... 9.4, 9.12, 14.6, 14.7, 15.5 quadratic time... 22.2, 22.10 queue... 20.8, 20 Queue ADT... 20.1 circular buffer implementation... 20.4 linked implementation... 20.3 List implementation... 20.1 queueing discipline... 20.8, 20 random... 10.12 random number... 10.5, 13.6 rank... 12.2 Rectangle... 8.8 recursion... 4.7, 4.10, 5.10, 12.9, 13.10, 21.5, 22.3, 22.7 infinite... 4.8, 4.10, 12.9 recursive... 4.7 recursive definition... 22.6 redundancy... 1.4 reference... 8.2, 8.7, 8.10, 8.12, 13.6, 18.1 embedded... 18.1 references... 16.1, 16.8 assignment of... 16.4 declaration of... 16.2 returning... 16.7 reheapify... 22.7 representation... 14.1 resize... 23.9 return... 4.6, 5.1, 8.9 return type... 5.13 return value... 5.1, 5.13 inside loop... 12.8 variable... 18.6 root node... 21.1, 21.12 rounding... 3.2 run time... 22.2 run-time error... 1.3, 4.8, 7.6, 9.5, 10.1, 12.9, 14.9, 23.6, 23.7 safe language... 1.3 same... 12.4 scaffolding... 5.2, 5.13 searching... 12.8 seed... 10.12, 10.13 selection sort... 22.2, 22.11 semantics... 1.3, 1.6, 5.7 Set... 23.6 ordered... 23.10 shuffling... 13.6, 13.9 singleton... 18.8, 18.9 sorting... 13.7, 13.10, 22.2, 22.3, 22.10 special character... 23.4 Stack... 19.3 stack... 4.9, 5.10, 19.2 array implementation... 19.7 state... 8.2 state diagram... 8.2, 12.3, 12.6, 13.3, 23.6 statement... 1.2, 2.11 assignment... 2.4, 6.1 break... 13.2, 23.2 comment... 1.5 conditional... 4.2 declaration... 2.3, 8.2 for... 10.3 initialization... 5.6 output... 1.5, 2.1, 9.2 return... 4.6, 5.1, 8.9, 12.8 switch... 13.2 while... 6.3 static... 15.2 statistics... 10.6 stream... 8.11, 23.1, 23.10 status... 23.2 String... 2.1 concatentation... 23.5 native C... 23.2 struct... 14.2, 8, 9 as parameter... 8.5 as return type... 8.9 instance variable... 8.3 operations... 8.4 Point... 8.2 Rectangle... 8.8 Time... 9.1 structure... 8.12 structure definition... 13.5 subdeck... 12.10, 13.8 suit... 12.2 swapCards... 13.6 switch statement... 13.2 syntax... 1.3, 1.6 tab... 6.11 table... 6.4 two-dimensional... 6.5 templates... 17.4, 17 pitfalls... 17.3 syntax... 17.1 typeparamter... 17.1, 17.4 temporary variable... 5.1 testing... 12.9, 13.10 fundamental ambiguity... 18.6 this... 11.2, 15.3, 15.11, 15.15 Time... 9.1 token... 19.5 Token class... 21.8 traverse... 7.5, 7.16, 12.8, 18.3, 18.4, 21.3, 21.5 counting... 7.9, 10.8 tree... 22.6, 21 tree node... 21.1 array implementation... 21.9 complete... 22.6 empty... 21.3 expression... 21.4 linked implementation... 21.2 traversal... 21.3, 21.5 Turing, Alan... 5.10 type... 2.2, 2.11 bool... 5.6 double... 3.1 enumerated... 13.1 int... 2.7 String... 2.1 vector... 10 typecasting... 3.2 value... 2.2, 2.3, 2.11 boolean... 5.5 variable... 2.3, 2.11 instance... 13.3, 14.3, 15.4, 15.11 local... 6.9, 6.11 loop... 6.5, 6.9, 7.5, 10.1 roles... 18.6 temporary... 5.1 vector... 10.13, 10 Vector class... 21.10 copying... 10.2 element... 10.1 length... 10.4 of Cards... 13.3 of object... 12.6 of pstring... 12.3 veneer... 20.2, 20.8 virtual... 15.13, 15.15 Visitable... 21.6 void... 5.1, 5.13, 9.3 while statement... 6.3 wrapper... 18.12 wrapper methods... 18.9 |