CS261 Data Structures Course Introduction Class Description - - PowerPoint PPT Presentation

cs261 data structures
SMART_READER_LITE
LIVE PREVIEW

CS261 Data Structures Course Introduction Class Description - - PowerPoint PPT Presentation

CS261 Data Structures Course Introduction Class Description General-purpose data structures and algorithms Topics: managing complexity, lists, queues, trees, heaps, hash tables, graphs. Class Description


slide-1
SLIDE 1

CS261 Data Structures

Course Introduction

slide-2
SLIDE 2

Class Description

  • General-purpose data structures and algorithms
  • Topics:

– managing complexity, – lists, – queues, – trees, – heaps, – hash tables, – graphs.

slide-3
SLIDE 3

Class Description

  • Prerequisites:

–CS 162 –MATH 231 –Basic programming skills –Some prior experience with Unix

slide-4
SLIDE 4

Why study data structures?

Fundamental in program design. Design efficient programs! You don’t want to write a program that takes forever to run and occupies all the memory.. Nor does any company want this (interview questions)

slide-5
SLIDE 5

Why study data structures

  • Simplify programming

– Many structures are common and well-studied – Knowing those saves a lot of time – As well as debugging effort

slide-6
SLIDE 6

Example

  • The search problem:
  • How fast can we do it?
  • What if we need to:

– Update the list very often – Search many times

John Doe Mary Lin Amanda Jones Tasha Funchess Carolyn Chandler … …

Eric Zimmerman Where is it?

slide-7
SLIDE 7

Class Description

  • Prerequisites:

–CS 162 –MATH 231 –Basic programming skills –Some prior experience with Unix

slide-8
SLIDE 8

Awareness

  • Awareness when programming:

– How long will my program take to run? – How much memory will it take? – Can I design it to be more efficient? – How much more efficient? – What does it take to make it more efficient?

slide-9
SLIDE 9

Class Information

  • Instructor: Prashant Kumar
  • Office: 3040 KEC
  • Office hours: Mon 4-6PM
  • Textbook (required)

– Dr. Budd’s Online Textbook

  • Reference Book (Highly recommended)

– C Pocket Reference

  • Course Website:

http://people.oregonstate.edu/~kumarp/CS261_Summer18/

slide-10
SLIDE 10

Structure of the Course

  • Weekly Reading
  • Lectures
  • Worksheets in Class
  • 5 Assignments
  • 1 Midterm
  • 1 Final Exam

Final Grade Breakdown 40% Assignments 30% Midterm 30% Final Exam

slide-11
SLIDE 11

Program Development

  • You may use any development environment to write

your code

  • We will write our code in ‘C’ with the C99 standard
  • I highly recommend that you become very familiar

with a debugger and debugging strategies

– Variables view – Expressions – Step over, into, out

  • All assignments must compile (using gcc) and execute

in the linux environment on flip.engr.oregonstate.edu

– First recitation will exercise this

slide-12
SLIDE 12

Preparation and Attendance

  • Regularly attend class
  • If you miss a class, you are still responsible for

learning the material covered during that class.

  • Do not expect a private tutorial if you skip

lectures and/or recitations.

slide-13
SLIDE 13

Conduct

  • Be on time
  • Mute cell phones
  • You are encouraged to

ask questions

slide-14
SLIDE 14

Academic Honesty -- Homework

  • Honesty:

–Absolutely essential for learning to occur –Forms the foundation of your professional integrity

  • Ok

Discuss concepts, general approaches, bugs

slide-15
SLIDE 15

Collaboration

  • You are expected to do your own work!
  • OK to talk about general approaches and

strategies with other students

  • Do not simply let someone else tell you how

to solve the problem

  • Do not let someone else copy your work
slide-16
SLIDE 16

Makeup Policy for the Exams

  • Contact the instructor at least 5 days in

advance to arrange for an alternate date/time

  • When the student is disabled, check

http://ds.oregonstate.edu/

  • No makeup for students who miss a midterm,
  • r final exam without an excused absence