WClasses

CS 138 - Introduction to Data Abstraction and Implementation

Software abstractions via elementary data structures and their implementation; encapsulation and modularity; class and interface definitions; object instantiation; recursion; elementary abstract data types, including sequences, stacks, queues, and trees; implementation using linked structures and arrays; vectors and strings; memory models; automatic vs. dynamic memory management.

Prerequisites

CS137

Corequisites

None

Antirequisites

None

Offerings

Winter 2026 [1261]

SectionClassEnrolledTimeDaysLocationInstructor
LEC 0015951135 / 15011:30 - 12:20 T
TST 2016522135 / 15010:30 - 12:20 Th
TUT 101595268 / 7511:30 - 12:20 F
TUT 102642267 / 7512:30 - 13:20 F

Winter 2025 [1251]

SectionClassEnrolledTimeDaysLocationInstructor
LEC 0016038143 / 15011:30 - 12:20 T
TST 2017927143 / 15010:30 - 12:20 Th
TUT 101603974 / 7511:30 - 12:20 F
TUT 102657369 / 7512:30 - 13:20 F

Winter 2024 [1241]

SectionClassEnrolledTimeDaysLocationInstructor
LEC 0016064129 / 15015:30 - 16:20 F
TUT 101606568 / 7513:30 - 14:20 F
TUT 102669561 / 7514:30 - 15:20 F

Winter 2023 [1231]

SectionClassEnrolledTimeDaysLocationInstructor
LEC 0016200139 / 15009:30 - 10:50 TSTC 0050Mike Godfrey
TUT 101620169 / 7513:30 - 14:20 FMC 2038
TUT 102905570 / 7514:30 - 15:20 FMC 2038

Winter 2022 [1221]

SectionClassEnrolledTimeDaysLocationInstructor
LEC 0016073144 / 15518:00 - 19:50 T,ThE7 4043Derek Rayside
TUT 1016074144 / 15515:30 - 16:20 WE7 4053

Winter 2021 [1211]

SectionClassEnrolledTimeDaysLocationInstructor
LEC 0416124145 / 15009:30 - 10:50 T,Th Mike Godfrey
TUT 1416125145 / 15016:30 - 17:20 W Mike Godfrey

Winter 2020 [1201]

SectionClassEnrolledTimeDaysLocationInstructor
LEC 0015973131 / 13809:30 - 10:50 T,ThMC 1085Mike Godfrey
TUT 1015974131 / 13816:30 - 17:20 WMC 1085
TUT 10260160 / 69

Winter 2019 [1191]

SectionClassEnrolledTimeDaysLocationInstructor
LEC 0015851128 / 12509:30 - 10:50 T,ThMC 1085Michael Godfrey
TUT 101585266 / 6210:30 - 11:20 FMC 2034John Akinlabi Akinyemi
TUT 102589662 / 6310:30 - 11:20 FMC 4040

Winter 2018 [1181]

SectionClassEnrolledTimeDaysLocationInstructor
LEC 0015912140 / 14110:00 - 11:20 T,ThMC 1085Michael Godfrey
TUT 101591371 / 7108:30 - 09:20 TMC 4040
TUT 102595969 / 7008:30 - 09:20 ThMC 4040

Winter 2017 [1171]

SectionClassEnrolledTimeDaysLocationInstructor
LEC 0015648135 / 13510:00 - 11:20 T,ThRCH 301Michael Godfrey
TUT 101564971 / 6710:30 - 11:20 WRCH 301
TUT 102569564 / 6810:30 - 11:20 FRCH 301

Winter 2016 [1161]

SectionClassEnrolledTimeDaysLocationInstructor
LEC 0016199123 / 12510:00 - 11:20 T,ThB1 271Michael Godfrey
TUT 101620065 / 6513:30 - 14:20 ThMC 4042
TUT 102624758 / 6516:30 - 17:20 MMC 4058

Winter 2015 [1151]

SectionClassEnrolledTimeDaysLocationInstructor
LEC 0015994138 / 15010:00 - 11:20 T,ThB1 271Michael Godfrey
TUT 101599574 / 7512:30 - 13:20 TMC 4045
TUT 102604264 / 7512:30 - 13:20 ThMC 2038

Winter 2014 [1141]

SectionClassEnrolledTimeDaysLocationInstructor
LEC 0015819153 / 15410:00 - 11:20 T,ThOPT 347Michael Godfrey
TUT 101582075 / 7712:30 - 13:20 TMC 2035
TUT 102587278 / 7712:30 - 13:20 WMC 1056

Spring 2013 [1135]

SectionClassEnrolledTimeDaysLocationInstructor
LEC 00158381 / 1

Winter 2013 [1131]

SectionClassEnrolledTimeDaysLocationInstructor
LEC 0015588141 / 14510:00 - 11:20 T,ThEIT 1015Michael Godfrey
TUT 101558974 / 7612:30 - 13:20 TAL 105
TUT 102564467 / 6912:30 - 13:20 WPHY 313

Fall 2012 [1129]

SectionClassEnrolledTimeDaysLocationInstructor
LEC 00183841 / 1

Winter 2012 [1121]

SectionClassEnrolledTimeDaysLocationInstructor
LEC 0015401117 / 13610:00 - 11:20 T,ThRCH 302Andrew Morton
TUT 101540262 / 6812:30 - 13:20 TMC 4041
TUT 102546255 / 6812:30 - 13:20 ThMC 4041

Winter 2011 [1111]

SectionClassEnrolledTimeDaysLocationInstructor
LEC 0015403128 / 15010:00 - 11:20 T,ThEIT 1015Michael Godfrey
TST 2015527128 / 150
TUT 101540462 / 7512:30 - 13:20 TAL 105
TUT 102546666 / 7512:30 - 13:20 ThAL 105

Fall 2010 [1109]

SectionClassEnrolledTimeDaysLocationInstructor
LEC 00179981 / 1

Spring 2010 [1105]

SectionClassEnrolledTimeDaysLocationInstructor
LEC 00168611 / 1

Winter 2010 [1101]

SectionClassEnrolledTimeDaysLocationInstructor
LEC 0015461117 / 12010:00 - 11:20 T,ThMC 4020Michael Godfrey
TST 2016938117 / 12019:00 - 21:00 Th
TUT 101546259 / 6012:30 - 13:20 TMC 4063
TUT 102554258 / 6012:30 - 13:20 ThMC 4063

Winter 2009 [1091]

SectionClassEnrolledTimeDaysLocationInstructor
LAB 201729564 / 6014:30 - 16:20 TMC 3005
LAB 202729659 / 6014:30 - 16:20 ThMC 3005
LEC 0017293123 / 12010:00 - 11:20 T,ThMC 4061Michael Godfrey
TUT 101729467 / 6008:30 - 09:20 WMC 4040
TUT 102747956 / 6008:30 - 09:20 FMC 4040

UW Flow Ratings

Liked: 89.07%

89.07%

Easy: 85.33%

85.33%

Useful: 93.18 %

93.18%

CS 138 leads to

AMATH 242 - Introduction to Computational Mathematics

CM 271 - Introduction to Computational Mathematics

CS 230 - Introduction to Computers and Computer Systems

CS 231 - Algorithmic Problem Solving

CS 234 - Data Types and Structures

CS 241 - Foundations of Sequential Programs

CS 241E - Foundations of Sequential Programs (Enriched)

CS 245 - Logic and Computation

CS 246 - Object-Oriented Software Development

CS 251 - Computer Organization and Design

CS 330 - Management Information Systems

CS 335 - Computational Methods in Business and Finance

CS 371 - Introduction to Computational Mathematics

MSE 343 - Human-Computer Interaction

STAT 340 - Stochastic Simulation Methods

CS 240E - Data Structures and Data Management (Enriched)

CO 487 - Applied Cryptography

SE 212 - Logic and Computation