Skip to main content
  • CS102: Introduction to Computer Science II
    0%

Focus Mode is ON. Click ‘X’ at right bottom to close it.

  • Previous
  • Standard Template Library Background
    Course Introduction
    Course Syllabus
    Unit 1: The Building Blocks of Object-Oriented Programming
    1.1: Programming Paradigms
    What is Computation?
    Functional Programming
    A Brief Review of Object-Oriented Concepts
    1.2: Generic Programming and Late-Definition of Data Types
    Generic Programming
    Staged Generic Programming
    1.3: Fundamental Concepts of Object-Oriented Programming
    Objects and Classes
    1.3.1: Practice Using Classes and Objects
    Classes and Objects in C++
    1.3.2: Practice Using Inheritance
    Inheritance in C++
    1.4: Insights from Experienced Programmers
    Beyond Patterns: Technological Systems and the Nature of Order
    The Aesthetic of Programming
    Unit 1 Assessment
    Unit 1 Assessment
    Unit 2: C++ and Java Differences
    2.1: C++ Background
    History of the C Programming Language
    History of C++
    Introduction to C++
    Features of C++
    Introduction to Objects from a C++ Perspective
    Compatibility of C and C++
    2.2: Java Background
    History of the Java Programming Language
    Introduction to Programming in Java
    The Mental Landscape of Java (Chapter 1)
    Objects in Java
    Lists and Sets
    2.3: Comparing Java and C++
    Comparing Java and C++
    C++ vs. Java: Code to Executable
    Unit 2 Assessment
    Unit 2 Assessment
    Unit 3: C++ Standard Template Library
    3.1: History and Motivation
    History of the Standard Template Library
    3.2: Main Design Ideas
    Standard Template Library Background
    STL and its Design Principles
    3.3: The Elements of C++ STL
    Iterators in the C++ STL
    More on the Standard Template Library
    Making and Using STL Objects
    C++ Reference
    Function Objects
    Unit 3 Assessment
    Unit 3 Assessment
    Unit 4: Java Container Library
    4.1: Introduction
    Java Collections Framework
    4.2: Details
    More on the Java Collections Framework
    Practice: Understanding and Creating HashSets in Java
    Practice: Understanding and Creating TreeSets in Java
    4.3: Further Examples
    Deciding Which Member of the Java Collection to Use
    Examples of JCL Use
    Unit 4 Assessment
    Unit 4 Assessment
    Unit 5: Exceptions
    5.1 Introduction to Exceptions
    Exception Handling
    A Systematic Approach for Structuring Exception Handling in Robust Component-Based Software
    5.2: The Role of Exceptions
    Introduction to Correctness and Robustness
    Writing Correct Programs
    5.3.1: Exceptions in Java
    Exceptions in Java
    Java Error Handling
    Exceptions and try...catch
    Handling Exceptions in Java
    5.3.2: Exceptions in C++
    C++ Exception Handling
    Exception Handling in C++
    Unit 5 Assessment
    Unit 5 Assessment
    Unit 6: Recursion
    6.1: What is Recursion?
    Recursive Definitions
    Recursion
    6.2: Recursive Structures
    Divide and Conquer Methods
    6.3: Recursive Steps
    Recursion in Java
    Recursion in C++
    6.4: Applying Recursion
    Notes on Recursion
    Tail-Recursive Functions
    Explicit vs. Recursive Programming
    Recursive Rights and Wrongs
    MergeSort: A Graphical Recursive Explanation
    Translating Between Recursive and Explicit Rules for Numeric Sequences
    6.5.1: Examples in C/C++
    Introduction to Recursion
    Finding the Length of a String
    Count the Number of Digits in an Integer
    6.5.2: Examples in Java
    Practice with Recursion: Binary Trees
    Unit 6 Assessment
    Unit 6 Assessment
    Unit 7: Searching and Sorting
    7.1: Search Algorithms
    Memory and Search Methods: Binary Search, Bubble, and Selection Sorts
    Linked Lists
    Recursive Data Structures
    Basic Tree Traversals
    Searching and Hashing
    7.2: Sorting Algorithms
    Sorting
    Quicksort
    Radix Sort
    7.3: Analyzing Program Efficiency
    A Brief Comparison of Python and C++ Syntax
    Understanding Program Efficiency, Part 1
    Understanding Program Efficiency, Part 2
    Unit 7 Assessment
    Unit 7 Assessment
    Course Feedback Survey
    Course Feedback Survey
    Certificate Final Exam
    CS102: Certificate Final Exam
    Archived Materials
  • Next
  • Course Catalog
    • All categories
    Arts & Humanities
    • Art History
    • Communication
    • English
    • Philosophy
    • Business Administration
    • Computer Science
    • English as a Second Language
    Professional Development
    • Business and Communication
    • College Success
    • Computer and Information Technology
    • General Knowledge for Teachers
    • Writing and Soft Skills
    Science and Math
    • Biology
    • Chemistry
    • Mathematics
    • Physics
    Social Science
    • Economics
    • Geography
    • History
    • Political Science
    • Psychology
    • Sociology
  • Home
  • Specialization Programs
    Specialization Programs
  • Help
    Getting Started Help Center & FAQ
Close
Toggle search input
You are currently using guest access
Log in
Course Catalog Collapse Expand
  • All categories
Arts & Humanities
  • Art History
  • Communication
  • English
  • Philosophy
  • Business Administration
  • Computer Science
  • English as a Second Language
Professional Development
  • Business and Communication
  • College Success
  • Computer and Information Technology
  • General Knowledge for Teachers
  • Writing and Soft Skills
Science and Math
  • Biology
  • Chemistry
  • Mathematics
  • Physics
Social Science
  • Economics
  • Geography
  • History
  • Political Science
  • Psychology
  • Sociology
Home Specialization Programs Collapse Expand
Specialization Programs
Help Collapse Expand
Getting Started Help Center & FAQ
Expand all Collapse all
  1. CS102: Introduction to Computer Science II
  2. Unit 3: C++ Standard Template Library
  3. 3.2: Main Design Ideas
  4. Standard Template Library Background

Standard Template Library Background

Completion requirements

Paraphrasing the introduction, this video introduces STL, a formal part of the modern C++ language standard. The speaker demonstrates many STL core features (iterators, algorithms, and data structures). He elaborates on technical details in very substantive way. STL, is a C++ library of classes, algorithms, and iterators, while providing many fundamental algorithms, data structures, and templates.

Introduction to C++ STL

Source: Stephan T. Lavavej, https://learn.microsoft.com/en-us/shows/c9-lectures-stephan-t-lavavej-standard-template-library-stl-/c9-lectures-introduction-to-stl-stephan-t-lavavej
Creative Commons License This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 License.

Last modified: Saturday, 28 January 2023, 2:21 PM
Contact site support
You are currently using guest access (Log in)
Policies
Get the mobile app
Powered by Moodle


© Saylor Academy 2010-2024 except as otherwise noted. Excluding course final exams, content authored by Saylor Academy is available under a Creative Commons Attribution 3.0 Unported license. Third-party materials are the copyright of their respective owners and shared under various licenses. See detailed licensing information. Saylor Academy®, Saylor.org®, and Harnessing Technology to Make Education Free® are trade names of the Constitution Foundation, a 501(c)(3) organization through which our educational activities are conducted.








Privacy Policy Terms & Conditions

Saylor Academy © 2010-2025 except as otherwise noted. Excluding course final exams, content authored by Saylor Academy is available under a Creative Commons Attribution 3.0 Unported license. Third-party materials are the copyright of their respective owners and shared under various licenses. See detailed licensing information. Saylor Academy®, Saylor.org®, and Harnessing Technology to Make Education Free® are trade names of the Constitution Foundation, a 501(c)(3) organization through which our educational activities are conducted.