Chapter 11 Outcomes
Pointers and Linked Lists


After completing this chapter and participating in class, you should be able to accomplish each of the following outcomes.

Knowledge Outcomes

  1. Define each of the key terms listed in the chart below.

  2. pointer ^ ->
    new memory pool heap
    heap exhaustion free link
    nil singly linked lists key field vs.
    information field
    abstract data type
    (ADT) List
    uninitialized pointers dangling pointers

  3. State the two principle uses of pointers in OOT (11.1).

  4. Explain the difference between storing records using pointers and storing records using arrays (11.1).

  5. Explain what the new and free statements do when using pointers (11.1).

  6. Explain the use of ^ and -> when using pointers (11.1).

  7. Describe the advantages and disadvantages to using pointers (11.1 - 11.2).

  8. When creating a data structure which uses pointers, explain what modifications need to be made in order to have a long list of records (11.).

  9. Explain how nil is used in pointers (11.2 - 11.3).

  10. State the definition of the abstract data type List (11.4).

  11. Explain the purpose of each operation found in the abstract data type List (11.4).

  12. Explain how the "list.dem" program supports the operations of the ADT List (11.4).

  13. Discuss the role of the "list.dem" program compared to the "listcl.tu" program for the list class (11.5).

  14. Provide a general explanation of how each of the procedures work in the "listcl.tu" file (11.5).

  15. Describe the difference between the enter procedure in the "listcl.tu" file and the enter procedure in the "sortlicl.tu" file (11.5 & 11.6).

  16. Explain how an uninitialized pointer and a dangling pointer can cause problems, and how these problems might be avoided (11.7).

Skills Outcomes

  1. Declare a pointer using a ^ or pointer to (11.1).

  2. Draw diagrams showing how pointers are moved and re-assigned (11.).

  3. Using pointers, show a method that can be used to input names in one order, and output these names in their reverse order (11.3).

  4. Use a number of pointers (such as last and p) in order to maintain a linked list (11.3).

  5. Show how to add new records into a singly linked list by one of the following methods (11.3):