Recognize sorting data structures using quadratic (n2) and binary (n log n) sorts
Advanced Python and AI Programming
6.10 Merge Sort
6.11 Quick Sort
7.4 Searching and Sorting the Library
CPA.2.2d
Compare the efficiency of different sorting algorithms
Advanced Python and AI Programming
6.11 Quick Sort
7.4 Searching and Sorting the Library
CPA.3.1a
Initialize multidimensional arrays
Texas Computer Science I in Python
10.6 2d Lists
CPA.3.1b
Input and output data into and from multidimensional arrays
Texas Computer Science I in Python
10.6 2d Lists
CPA.3.1c
Perform operations on multidimensional arrays
Texas Computer Science I in Python
10.6 2d Lists
CPA.3.1d
Perform searches on multidimensional arrays
Advanced Python and AI Programming
6.9 Recursion
Texas Computer Science I in Python
10.6 2d Lists
CPA.4.1a
Declare stack structures
Advanced Python and AI Programming
5.3 Last-In, First-Out
IB Computer Science SL Resources
8.5 Last-In, First-Out
CPA.4.1b
Initialize stacks
Advanced Python and AI Programming
5.3 Last-In, First-Out
IB Computer Science SL Resources
8.5 Last-In, First-Out
CPA.4.1c
Check for empty and full stacks
Advanced Python and AI Programming
5.3 Last-In, First-Out
IB Computer Science SL Resources
8.5 Last-In, First-Out
CPA.4.1d
Push on to and pop off values from stacks (Last in, First out)
Advanced Python and AI Programming
5.3 Last-In, First-Out
IB Computer Science SL Resources
8.5 Last-In, First-Out
CPA.4.1e
Develop an application that utilizes stacks
Advanced Python and AI Programming
5.3 Last-In, First-Out
7.3 Playlists and Player Features
IB Computer Science SL Resources
8.5 Last-In, First-Out
CPA.4.2a
Declare queue structures
Advanced Python and AI Programming
5.4 First-In, First-Out
IB Computer Science SL Resources
8.6 First-In, First-Out
CPA.4.2b
Check for empty and full queues
Advanced Python and AI Programming
5.4 First-In, First-Out
IB Computer Science SL Resources
8.6 First-In, First-Out
CPA.4.2c
Initialize queues
Advanced Python and AI Programming
5.4 First-In, First-Out
IB Computer Science SL Resources
8.6 First-In, First-Out
CPA.4.2d
Enqueue values onto and dequeue values off of queues (First in, First out)
Advanced Python and AI Programming
5.4 First-In, First-Out
IB Computer Science SL Resources
8.6 First-In, First-Out
CPA.4.2e
Develop an application that utilize queues
Advanced Python and AI Programming
5.4 First-In, First-Out
8.2 Breadth-First Search
IB Computer Science SL Resources
8.6 First-In, First-Out
CPA.5.1a
Create classes with minimal extraneous relationships (high cohesion and low coupling)
CPA.5.1b
Demonstrate and use composition and aggregation (HAS-A) relationships
Advanced Python and AI Programming
2.8 Composition
CPA.5.1c
Demonstrate the use of class variables (static variables)
Utah Computer Programming 1 and 2
16.5 Class Variables vs. Instance Variables
Texas Computer Science I in Python
18.3 Class Variables vs. Instance Variables
CPA.5.1d
Understand the principle of encapsulation as it relates to object-oriented programming
Advanced Python and AI Programming
2.3 Getters and Setters
CPA.5.2a
Utilize class hierarchies (parent-child relationships, superclass-subclass relationships)
Advanced Python and AI Programming
2.4 Inheritance
4.2 Building Your Characters
CPA.5.2b
Demonstrate IS-A relationships
Advanced Python and AI Programming
2.4 Inheritance
2.8 Composition
CPA.5.2c
Override methods. Understand how to call the overriding method from the child
Advanced Python and AI Programming
2.5 Polymorphism
CPA.5.2d
Demonstrate the protected modifier
CPA.5.2e
Call a parent class constructor from the child’s constructor
Advanced Python and AI Programming
2.4 Inheritance
CPA.5.3a
Create and implement abstract classes
CPA.5.3b
Implement interfaces (purely abstract classes)
CPA.5.3c
Know difference between abstract & interface classes
CPA.5.4a
Demonstrate that a parent object variable can hold an instance of a child class
Advanced Python and AI Programming
2.5 Polymorphism
CPA.5.4b
Determine IS-A relationships via code (e.g. instanceof, typeof, isa)
Advanced Python and AI Programming
2.5 Polymorphism
Texas Computer Science I in Python
18.4 Inheritance
CPA.5.4c
Demonstrate typecasting via method calls of inherited objects
CPA.6.1a
Create an activity diagram
Arkansas Software Development
7.3 Requirements and Planning
CPA.6.1b
Create a class diagram for the class hierarchy of a program
IB Computer Science SL Resources
11.10 Designing Classes
Arkansas Software Development
7.3 Requirements and Planning
CPA.6.1c
Create a sequence diagram for a method
CPA.6.1d
Translate diagrams to code
Advanced Python and AI Programming
11.9 Flowcharts and Pseudocode
IB Computer Science SL Resources
1.2 Flowcharts and Pseudocode
CPA.7.1a
Students will understand that API’s allow programs to talk to each other
Advanced Python and AI Programming
3.3 Exploring Web Data with Python
CPA.7.1b
Students will demonstrate the use of an API in the development of a program
Advanced Python and AI Programming
3.3 Exploring Web Data with Python
CPA.8.1
Create an individual program of significant complexity.
Advanced Python and AI Programming
4.3 Items, Choices, and the Loop
4.4 Import Packages
7.5 Put It All Together
CPA.8.1a
Create design documentation for the project
Advanced Python and AI Programming
4.1 Project Launch and Design
7.1 Plan Your Music Library
9.1 Plan Your Classifier
Arkansas Software Development
7.3 Requirements and Planning
11.1 Project Overview
CPA.8.1b
Follow accepted object-oriented programming methodology when writing the code
Advanced Python and AI Programming
4.2 Building Your Characters
4.3 Items, Choices, and the Loop
CPA.8.2
Compile a portfolio of the individual and group programs developed.
Arkansas Software Development
11.4 Portfolio
CPA.8.2a
Include sample design work
Arkansas Software Development
11.4 Portfolio
CPA.8.2b
Include sample program source code
Arkansas Software Development
11.4 Portfolio
CPA.9.1a
Explain the impact software can have on society (i.e., privacy, piracy, copyright laws, ease of use, etc.)
Advanced Python and AI Programming
8.11 Decision Trees
9.6 Showcase and Reflection
Utah Computer Programming 1 and 2
17.1 Cyber Ethics and Laws
17.4 Software Licenses
CPA.9.1b
Explain the ethical reasons for creating reliable and robust software
Advanced Python and AI Programming
8.10 Overfitting and Evaluation
Utah Computer Programming 1 and 2
8.5 Software Reliability and Automation's Impact
CPA.9.1c
Describe how computer-controlled automation affects a workplace and society
Advanced Python and AI Programming
8.12 Neural Networks and Perceptrons
Utah Computer Programming 1 and 2
8.5 Software Reliability and Automation's Impact
CPA.9.2
Students will understand the ethical use of AI in coding and how it impacts the programming field.
Utah Computer Programming 1 and 2
18.8 Introduction to AI-Assisted Coding
CPA.9.2a.i
Know when AI use is appropriate
Utah Computer Programming 1 and 2
18.1 How to Use AI Tools Safely
18.8 Introduction to AI-Assisted Coding
CPA.9.2a.ii
Understand when and how to disclose the use of AI
Utah Computer Programming 1 and 2
18.8 Introduction to AI-Assisted Coding
CPA.9.2b.i
Understand why it is risky to let AI write your code without human oversight.
Utah Computer Programming 1 and 2
18.8 Introduction to AI-Assisted Coding
CPA.9.2b.ii
Know the importance of understanding programming concepts.
Utah Computer Programming 1 and 2
18.8 Introduction to AI-Assisted Coding
CPA.9.2c.i
Understand the importance of reviewing all AI generated code for accuracy.
Utah Computer Programming 1 and 2
18.8 Introduction to AI-Assisted Coding
CPA.9.2c.ii
Understand that AI tools can be helpful for debugging code, but it’s important to double-check their suggestions using your own programming knowledge
Utah Computer Programming 1 and 2
18.8 Introduction to AI-Assisted Coding
CPA.9.2d.i
Ethical use of AI-written software requires human oversight, bias awareness, security testing, transparency, and accountability to ensure software is fair, safe, and responsible.