Previous Section
 < Free Open Study > 
Next Section


Index

D

Data
different views of, 64-72
encapsulation of, 65
perspectives on, 116
relationships among views of, 189
Data abstraction, 64-66, 116
Data coverage, 35-36, 38, 39, 41
Data-coverage test plan
for Divide function, 41-42
Data objects, 17
and object-oriented design, 173
in real estate listings case study, 175, 176
Data structures, 64, 66-71
and abstract data types, 68
testing in C++, 45-49
unsorted lists, 134
Data swaps
and bubble sort, 596
Data types, 2
generic, 126-127, 210
Date type, 86
DateType class, 87
comparison of two instances of, 89
DateType type, 89
Deadlines
importance of, 7
debugFlag, 44
Debugging, 19, 20
planning for, 42-44
programs, 3
recursive routines, 432
warning about, 44
Declaration
definition distinguished from, 126
Deep copies, 334, 353, 392
shallow copies versus, 351, 352
Default constructor, 135, 223, 225
Defects
in different phases of software life cycle, 33
Definition
declaration distinguished from, 126
Degenerate tree, 505
Delete, 628
deletedltem value, 628
Delete function, 419, 477, 481
DeleteItem function, 125, 127, 130, 140, 143, 335, 460, 463, 517, 628
in comparison of Unsorted List ADT and Sorted List ADT, 165, 166
discussion about, 477, 479-483, 502-503
testing, 144, 145
and Sorted List ADT, 324
and Unsorted List ADT, 307, 314-315
DeleteItem operation, 505
algorithm for, 150
recursive version of, 419-420
DeleteNode, 480, 482
delete operator, 220
Deleting items
in circular lists, 342, 343, 344
in sorted lists, 150, 189
in unsorted lists, 141, 189
Delivery, 3
DepthFirstSearch
application of in airline-route graph, 553-556
Depth-first strategy, 553, 554, 555-556
Depth of recursion, 429
and binary search trees, 504
Dequeue function, 242
and Queue ADT as linked structure, 299-303
Dequeue operation, 227, 236, 240, 253, 299, 533, 543, 546
algorithm for, 544
effect of, 235
implementation of, 233, 234
Dereference operator (*), 216, 280
Derived class, 92, 94, 242
Descendants, 91, 457
Design
and checklist for deskchecking C++ program, 32
goal of, 66
implementation of, 3
problem's requirements and decisions about, 262
review activities for, 31-34
specifications and errors in, 21-23
for testing, 42
verification of, 58
Designing for correctness, 28-34
Design phase
software changes in, 5
Deskchecking, 31
checklist for C++ program, 32
Destructor, 225
Destructor operations, 505
Detailed specifications
writing, 8-9
Diagrams, 13
Difference, 571
Direct access
and arrays, 77
Direct addressing, 217
Directed graphs (digraphs), 547, 548
complete, 550
Direct recursion, 400
Divide-and-conquer approach, 15, 16, 438
with binary searching, 622
and Merge Sort method, 607
with QuickSort, 609
and sorting problems, 600
Divide-and-conquer sorts
rationale for, 601
Divide-by-zero errors, 97
Divide function
and debugging statements, 43
test plan for, 39
Division, 65
Division by zero, 258
Division method (%), 635
Dope vector, 80
Dot notation, 89, 90
Dot operator
precedence over dereferencing operator, 287
Double colon operator (::), 18
Double quotes
user-defined header files enclosed in, 88
Doubly linked lists, 327, 334, 344-348, 392
deleting from, 349
finding items in, 345-346
inserting into, 347
linking new nodes into, 348
operations on, 346, 348
Doubly linked structures, 299
traversing in both directions with, 374
do...while loop, 406
Driver, 188
Driver design
in simulation case study, 254
Driver program, 16, 188
Dummy nodes, 392
Dummy values, 508
binary search tree stored in array with, 509
Dynamic allocation, 217, 218
Dynamically allocated arrays, 222-225, 295, 358
Dynamically allocated variable
lifetime of, 224
Dynamic array implementation
Big-O comparison of queue operations for, 306
in terms of Big-O, 295, 296
Dynamic binding, 92, 368, 371, 392
Dynamic memory allocation, 358
Dynamic storage, 222, 262
array-based lists in, 359
linked lists in, 360
stack in which array is in, 224
Dynamic storage allocation, 280, 296, 420, 423-429, 446


Previous Section
 < Free Open Study > 
Next Section
Converted from CHM to HTML with chm2web Pro 2.85 (unicode)