touque.ca > Education Commons > IB > Topics

D.4 Advanced Program Development (HL)

D.4.1 Define the term recursion.

D.4.2 Describe the application of recursive algorithms.

Students should understand that recursion can be applied to a small subset of programming problems to produce elegant solutions. Students should also understand that recursive algorithms are rarely used in practice.

D.4.3 Construct algorithms that use recursion.

This is limited to a method that returns no more than one result and contains either one or two recursive calls.

D.4.4 Trace recursive algorithms.

All steps and calls must be shown clearly.

D.4.5 Define the term object reference.

As typified by simple classes that are self-referential.

D.4.6 Construct algorithms that use reference mechanisms.

D.4.7 Identify the features of the abstract data type (ADT) list.

Students should understand the nature of an ADT—where no implementation details are known but the actions/methods are standard.

D.4.8 Describe applications of lists.

Students should understand that lists can be used to represent stacks and queues.

D.4.9 Construct algorithms using a static implementation of a list.

Lists will be restricted to singly linked types. Methods that should be known are add (head and tail), insert (in order), delete, list, isEmpty, isFull.

D.4.10 Construct list algorithms using object references.

Lists will be restricted to singly linked types. Methods that should be known are add (head and tail), insert (in order), delete, list, isEmpty, isFull.

D.4.11 Construct algorithms using the standard library collections included in JETS Adobe Reader icon.

The classes are ArrayList and LinkedList. Students should have a broad understanding of the operation of these lists and their interface (methods) but not of the internal structure.

D.4.12 Trace algorithms using the implementations described in assessment statements D.4.9—D.4.11.

In examination questions, definitions of ArrayList and LinkedList methods will be given where necessary.

D.4.13 Explain the advantages of using library collections.

Students should understand that libraries provide convenient and reliable implementations of common programming tasks.

D.4.14 Outline the features of ADT’s stack, queue and binary tree.

Students should be able to provide diagrams, applications and descriptions of these ADTs. For example, they should know that a binary tree can be used to efficiently store and retrieve unique keys.

D.4.15 Explain the importance of style and naming conventions in code.

Students should understand that meaningful identifiers, proper indentation, and adequate comments all improve the readability of code for people and thus save money, time, and effort in programming teams.

touque.ca > Education Commons > IB > Topics

[This page last updated 2020-12-23 at 13h10 Toronto local time.]