Professional Documents
Culture Documents
Syllabus: Equivalent Course: CS225 Data Structures and
Syllabus: Equivalent Course: CS225 Data Structures and
Syllabus: Equivalent Course: CS225 Data Structures and
Chapter 0 1
Syllabus
Instructor
Truong Quang Vinh, Ph.D. (tqvinh@hcmut.edu.vn)
Office: 118B1, Tues. 15-17pm, IC Design Lab
Website: www.doe.dee.hcmut.edu.vn
Homepage: www4.hcmut.edu.vn/~tqvinh/
Teaching assistant
Nguyễn Trần Ngọc Anh(anh.nguyenk2017@hcmut.edu.vn),
0388364628
Office: 118B1, Tues. 1-3pm, IC Design Lab
Text book
Required book
Goodrich, Tamassia, Mount, Data Structures and Algorithms in C++,
Wiley (BK library, book no. 2007909016 )
Jacob L Robinson, Introduction to 80x86 Assembly Language and
Computer Architecture, Jones and Bartlett Computer Science
D. P. Bovet, M. Cesati, Understanding the Linux Kernel, 3rd edition,
O'Reilly, 2005, ISBN 0-596-00565-2.
Reference books
Adam Drozdek, Data Structures and Algorithms in C++, Brooks/Cole.
Chapter 0 2
1
3/3/2021
Course Overview
Chapter 0 3
Learning Outcomes
1. Describe and explain basics of computer systems
2. Explain and use interrupts, processes, and process
scheduling
3. Describe and explain memory management and
memory virtualization
4. Implement and apply simple data structures for
software applications
5. Use programming language and develop software on
computer systems
Chapter 0 4
2
3/3/2021
Course Overview
Basic C++ programming
Data type, pointer, array, expressions, control flow, functions,
classes
Data Structures
Stack, queues, vectors, lists, sequence
Computer System - x86 Processor
Memory, input/output devices, CPU
Instruction set, interfacing C to assembly, macros, stack
frame and calling convention
Interrupt, exception
Computer System Management
Resource management, virtualization, protection, system call
interface, asynchronous and synchronous interactions
Chapter 0 5
Chapter 0 6
3
3/3/2021
2. Data structure
Common Data Structure
Array
Stack
Queue
Linked List
Sequence
Binary Tree
Heap
Hash Table
Priority Queue
Chapter 0 7
Chapter 0 8
4
3/3/2021
Chapter 0 9
Course Contents
Chapter 1: Basic C++ Programming
5
3/3/2021
Course Grading
Grading
Assignments : 20%
Project : 20%
Mid-term : 20%
Final Exam : 40%
Chapter 0 11
Group Selection
Each group has 2 or 3 students, random selection
Projects:
Presentation
Machine problem
Chapter 0 12
6
3/3/2021
Survey
1. Does anyone have experience on C++?
2. What is the difference between C and C++?
3. What is object-oriented programming?
Chapter 0 13
Chapter 0 14
7
3/3/2021
Chapter 0 15
Project 1
Difference between C and C++
Present the difference between C and C++
Give examples every item
Each member of the group has to present
Chapter 0 16