Training - University of Southern Mississippi
Download
Report
Transcript Training - University of Southern Mississippi
Data Structures in C++
CSC307
What The Course Is About
A data structure is a particular way of storing
and organizing data in a computer so that it
can be used efficiently.
Data structures are concerned with the
representation and manipulation of data.
Data: Streets in a city.
Manipulation: Do something with the data.
Add a new street.
Close a street.
Make a street one way.
Find route from your home to nearest gas station.
Data representation: simple variables…int, float
array variables… int [], float []
Others to be studied in this course.
Data Structures in 307
Linear List Arrays
Stacks.
Queues.
Dictionary.
Binary trees.
Priority queues.
Search trees.
Graphs.
Stack
Queue
Dictionary
Example Tree
President
root
children of root
VP1
VP2
Manager1 Manager2
Manager
VP3
Manager
grand children of
root
Worker Bee
great grand child of root
Example
Prerequisites
C++ (CSC101, 102) with a grade of C or
better.
Math
Web Site For The Course
www.cs.usm.edu/~nwang/datastructures
10:45-11:45
Textbook
Organization of Text
Three parts
– Part I … Chapters 1-4, Background
– Part 2 … Chapters 5-16, Data Structures
– Part 3 … Sorting Algorithms
Each chapter … concepts +
applications
Grades
5% for participation
15% for in class tests
30% for assignments (3 assignments)
30% for midterm
20% for final exam
Homework submission
Make sure your code can be compiled
on Orca!
Submit your codes to class gmail:
– [email protected]
Submit your paper tests in class before
you leave
Tests
Test 1: (take home)80+/100 will be
considered to stay in 307, other may
retake 101
Test 2: (take home), 70+/100 will be
consider to stay, others may retake 102
Exams
Exams are close book, close notes
3 term exams 30%
Final 20%
Grades (Rough Cutoffs)
90 to 100
80 to 89
70 to 79
60 to 69
0 to 59
A – Excellent work
B – Good work
C – Average work
D – Inferior work
F – Fail
Goal
Learning efficient data structures and
algorithms
Design and write large programs
Understanding and designing data
abstraction and interfaces
Learn C++