Course Organization - PowerPoint PPT Presentation

1 / 18
About This Presentation
Title:

Course Organization

Description:

Course Organization & Introduction. ECE573: Data Structures and Algorithms ... Introduction to Algorithms, by Thomas H. Cormen, Charles E. Leiserson, and ... – PowerPoint PPT presentation

Number of Views:83
Avg rating:3.0/5.0
Slides: 19
Provided by: venkat3
Category:

less

Transcript and Presenter's Notes

Title: Course Organization


1
Course Organization Introduction
  • ECE573 Data Structures and Algorithms
  • Electrical and Computer Engineering Dept.
  • Rutgers University
  • http//www.cs.rutgers.edu/vchinni/dsa/

2
Logistics
  • Instructor Dr. Venkat Chinni
    (chinni_at_datumglobal.com)
  • TA TBA
  • Course Details
  • Web Page http//www.cs.rutgers.edu/vchinni/dsa
  • Credits 3
  • Lecture times Thursday, 640-9.30 PM
  • Class room Core 538

3
Course Overview
  • Objective
  • To make you experts in programming the common
    algorithms and data structures using the C and
    C programming languages.
  • Prerequisites
  • Undergrad FORTRAN, PASCAL, C, C, or JAVA
    programming course plus basic understanding of
    data structures

4
Course Overview
  • Relationship to other courses
  • For Graduate ECE Computer Engineering students
    this course is a core, required course and
    replaces 16198503. The main difference is that
    this course in addition to covering the same
    material as in 503 will additionally have
    extensive laboratory exercises in programming
    using the C and C programming languages. There
    may be slightly less emphasis on computation
    theory and complexity than in 198503.
  • This course also serves as adequate preparation
    for 198513 which covers more advanced
    algorithms, including dynamic trees,
    optimization, parsing, unification, and search.
    None of these topics will be covered in the
    proposed course.

5
Course ? Flexibility Tentativeness
  • What is your expectations?
  • What is your backgrounds?

6
Course Syllabus Instruction Plan
PA Programming Assignment, HWHomework,
Quality circle Semi formal feedback meeting
with volunteer students
7
Text Books
  • Data Structures Algorithms in C, by Michael
    Goodrich, Roberto Tamassia, and David Mount
    (wiley www.wiley.com/college/goodrich )
  • Introduction to Algorithms, by Thomas H. Cormen,
    Charles E. Leiserson, and Ronald L. Rivest,
    McGraw-Hill, 1991
  •  
  • Supplemental Texts
  • The C Programming Language, by Brian W. Kernighan
    and Dennis M. Ritchie, Prentice-Hall, 1978
  • The C Programming Language, 2nd edition, Bjarne
    Stroustrup, Addison-Wesley, 1991

8
Warnings
  • Do NOT ignore these warnings!
  • We will be working on several small and large
    programming assignments. If you do not have good
    programming skills or cannot work hard
    consistently on these assignments, dont take
    this course.
  • Cheating will be punished severely.
  • You will learn a lot during this course, but you
    will have to work very hard to pass it!

9
Grading
  • Midterm 20
  • Final 20
  • Programming Assignments 30
  • Homework 20
  • Class Participation 10
  • Cheating policy Collaboration at the level of
    ideas is good. Copying code or words is not
    good. Parties involved will be assigned negative
    points.

10
Grading
  • Written homeworks will be graded
  • This is critical to doing well on the exams
  • Assignment hand-ins MUST be on time
  • Late hand-ins will not be accepted
  • Programming assignments must be turned in
    electronically
  • Instructions will be posted on the web
  • We will promptly close the turn-in at the
    appointed time (usually 4pm)
  • Comments will be emailed
  • Paperless as much as possible
  • Lab assignments are compulsory
  • Failure to obtain a satisfactory grade in the
    practical component of the course may cause you
    to be given a failing grade
  • Hey, after all it will also provide you the
    feedback to the written exams!

11
Programming Assignments
  • Assignment 1 is relative short, the final one is
    complex (with higher weightage)
  • You may find that you can use the code from the
    earlier assignments in the later assignments
  • What to submit
  • Summary report
  • Program code,
  • Relevant output
  • summary report (not more than 2 pages or 120
    lines of text) should be clear and concise
    Should have title, authors, intro, body,
    conclusions, email addresses of all the authors
    etc.

12
More..
  • Classroom Learning
  • 50 teaching
  • 50 case discussions/ assignment discussions/
    topic discussions/ students assigned to talk on
    topics (show animations?)
  • Homework
  • Will cover theory, mathematics, and good
    learning.

13
Introduction
  • What is Data?
  • What is Structured Data? Or Data Structures?
  • Why? How?
  • What is an algorithms? Why do we need them?

Data Structures and Algorithms
14
Introduction
  • What is Data?
  • I guess some useful information
  • What is Structured Data? Or Data Structures?
  • Why? How? Relations, orderliness, easy to
    process
  • Ex Tables, Trees, Stacks, Lists, Queues
  • What is an algorithms? Why do we need them?
  • To manipulate data (the structured one?)
  • Performance? (Why not assembly level coding?)

Data Structures and Algorithms
15
Programming
  • Software Engineering
  • Good programming practice long-life software
  • ANSI C ?
  • Machine independency?
  • Two formal introductory lab sessions early in the
    semester (IN THE LAB!)
  • TA will be available in the lab every week at
    times to be advertised.
  • The TA will advise on any problems related to the
    whole course assignments, lecture materials etc.

16
What to come?
  • Programming Object oriented programming
  • Computational complexity
  • Linked lists, arrays, matrices
  • Stacks Queues
  • Sorting (insertion, bubble, shell, quicksort,
    radix)
  • Binary trees, Quad trees
  • Priority queues
  • Balanced AVL trees, B-Trees, Heap data
  • Undirected and directed graphs
  • Search algorithms, Greedy algorithms
  • Divide conquer, breadth-first etc.
  • NP-complete problems
  • New BUSINESS ALGORITHMS

17
Summary
  • Data Structures and Algorithms
  • The key to your professional reputation
  • A much more dramatic effect can be made on the
    performance of a program by changing to a better
    algorithm than by
  • hacking
  • converting to assembler
  • Buy a text for long-term reference!
  • Professional software engineers have algorithms
    text(s) on their shelves
  • Hackers have user manuals for the latest software
    package
  • Which theyll have to throw away next year
    anyway!
  • Algorithms operate on data structures

18
Next Time
  • Programming Object Oriented Programming
  • Review (Basics?)
  • Who is going to talk?
  • To be announced
  • Classroom
  • TA
  • Final course plan
Write a Comment
User Comments (0)
About PowerShow.com