SlideShare a Scribd company logo
Data Structures and
Algorithms
Session 1. January 21, 2009
Instructor: Bert Huang
http://www.cs.columbia.edu/~bert/courses/3137
Session Plan
Administrative overview
Introduction to course content
About the Course:
Description
Lectures: Monday/Wednesday 2:40-3:55 PM
Mudd 633
We will study:
commonly used data structures and algorithms,
how to analyze these data structures and
algorithms.
About the Course:
Staff
Bert Huang
Office hours: Monday 4-6 PM (after class)
CEPSR/Schapiro Building 624
bert@cs.columbia.edu
TA’s:
Priyamvad Deshmukh, prd2112@columbia.edu
Manu N, mn2370@columbia.edu
Nikhil Ramesh, nf2241@columbia.edu
About the Course:
Reading
Data Structures and Algorithm Analysis in Java,
2nd Edition by Mark Allen Weiss.
ISBN-10: 0321370139
About the Course:
Resources
Course homepage:
http://www.cs.columbia.edu/~bert/courses/3137
Courseworks: http://courseworks.columbia.edu
Textbook Errata:
http://users.cs.fiu.edu/~weiss/dsaajava2/errata.html
Textbook Source Code:
http://users.cs.fiu.edu/~weiss/dsaajava2/code/
About the Course:
Prerequisites etc.
COMS W1007: Object-Oriented Programming and
Design in Java (or equivalent)
Co-requisite COMS W3203: Discrete Mathematics
COMS W3134: Data Structures and Algorithms
(less intense but covers similar topics for
non-majors)
About the Course:
Grading
50% Homework Assignments (six)
20% Midterm Exam (closed book, closed notes)
30% Final Exam (closed book, closed notes)
About the Course:
Academic Honesty
You must read the Computer Science
department’s academic honesty policy listed at
http://www.cs.columbia.edu/education/honesty/
Additional Comments:
Plagiarism is easy to catch.
All homework and exams in this class are
individual assignments. No collaboration.
About the Course:
Expectations
Attend class
Ask questions
Read assigned text
Start homework early
Write well and clearly
Get help when you need it
About the Course:
Grievances
Write reports of grading disputes on paper
Provide clear explanation of the disagreement
Give report to TA, TA will decide if correction is
warranted
If there is still disagreement, submit grading
dispute report to me
Definitions
Data Structure - abstract way to organize
information
Algorithm - abstract way to perform computation
tasks
Data Structures
Variables: boolean, int/byte/short/long,
float/double, char
Arrays, Strings
We’ll go over more advanced structures:
linked lists, trees, heaps, graphs, hash tables, etc.
Smarter data structures can be abstracted
Benefits of Abstraction
Consider Java Strings
We use them all the time
How is the text in a String object stored?
When we call the length() method, how does it
find the length?
How does it concatenate strings?
Course Goals
A series of case studies on common data
structures and algorithms
Gain intuition about how to design useful and
efficient data structures
Understand how to analyze any data structure or
algorithm
Algorithm Analysis
We must analyze algorithms’ and data structures’
running times and memory requirements.
Input data nowadays are huge. Need efficient
algorithms.
Over 100 million facebook.com users with
profiles, photos
Google’s system indexes over 1 trillion
(1,000,000,000,000) URLs
Next Class
We will discuss how to formally analyze algorithms
Big-Oh notation
Reading
Course Website:
http://www.cs.columbia.edu/~bert/courses/3137
Academic Honesty policy
http://www.cs.columbia.edu/education/honesty
Weiss Chapters 1 and 2
Ch. 1 should be about 75% review

More Related Content

PPT
Dbms
 
PPTX
1-Introduction to Data Structures beginner.pptx
PDF
In tech application-of_data_mining_technology_on_e_learning_material_recommen...
PDF
In tech application-of_data_mining_technology_on_e_learning_material_recommen...
PPTX
Lecture_01.1.pptx
PDF
E0322035037
PPT
Lect 1-2
PPT
Lect 1-2 Zaheer Abbas
Dbms
 
1-Introduction to Data Structures beginner.pptx
In tech application-of_data_mining_technology_on_e_learning_material_recommen...
In tech application-of_data_mining_technology_on_e_learning_material_recommen...
Lecture_01.1.pptx
E0322035037
Lect 1-2
Lect 1-2 Zaheer Abbas

Similar to Data Structures and Algorithms Slides Session 1. January 21, 2009 Lecture1.pdf (20)

PDF
SE-IT DSA THEORY SYLLABUS
PPT
kantorNSF-NIJ-ISI-03-06-04.ppt
PPTX
Lecture 1 introduction
PPTX
Data Structure.pptx
PDF
CIS-(Data Structures and Algorithms)FALL2023.pdf
PDF
Datastructures Notes
PDF
Iare ds lecture_notes_2
PDF
ITB - UNIT 3.pdf
DOC
cs690l-syl.doc.doc
PDF
Database system
PDF
COURSE OUTLINE.pdf
PPT
Lec1-Into
PDF
C Plus Data Structures Subsequent Dale Nell B
PPTX
EE-232-LEC-01 Data_structures.pptx
PDF
1- Introduction.pptx.pdf
PDF
Cs501 intro
PDF
Considering Structural and Vocabulary Heterogeneity in XML Query: FPTPQ and H...
PDF
CONSIDERING STRUCTURAL AND VOCABULARY HETEROGENEITY IN XML QUERY: FPTPQ AND H...
PDF
Considering Structural and Vocabulary Heterogeneity in XML Query: FPTPQ and H...
DOCX
Data models
SE-IT DSA THEORY SYLLABUS
kantorNSF-NIJ-ISI-03-06-04.ppt
Lecture 1 introduction
Data Structure.pptx
CIS-(Data Structures and Algorithms)FALL2023.pdf
Datastructures Notes
Iare ds lecture_notes_2
ITB - UNIT 3.pdf
cs690l-syl.doc.doc
Database system
COURSE OUTLINE.pdf
Lec1-Into
C Plus Data Structures Subsequent Dale Nell B
EE-232-LEC-01 Data_structures.pptx
1- Introduction.pptx.pdf
Cs501 intro
Considering Structural and Vocabulary Heterogeneity in XML Query: FPTPQ and H...
CONSIDERING STRUCTURAL AND VOCABULARY HETEROGENEITY IN XML QUERY: FPTPQ AND H...
Considering Structural and Vocabulary Heterogeneity in XML Query: FPTPQ and H...
Data models
Ad

Recently uploaded (20)

PDF
BMEC211 - INTRODUCTION TO MECHATRONICS-1.pdf
PPTX
Foundation to blockchain - A guide to Blockchain Tech
PPT
Mechanical Engineering MATERIALS Selection
PPTX
Engineering Ethics, Safety and Environment [Autosaved] (1).pptx
PPTX
Geodesy 1.pptx...............................................
PPTX
web development for engineering and engineering
PDF
Enhancing Cyber Defense Against Zero-Day Attacks using Ensemble Neural Networks
PPTX
Infosys Presentation by1.Riyan Bagwan 2.Samadhan Naiknavare 3.Gaurav Shinde 4...
PPTX
UNIT-1 - COAL BASED THERMAL POWER PLANTS
PPTX
FINAL REVIEW FOR COPD DIANOSIS FOR PULMONARY DISEASE.pptx
PPTX
Safety Seminar civil to be ensured for safe working.
PPTX
additive manufacturing of ss316l using mig welding
PDF
TFEC-4-2020-Design-Guide-for-Timber-Roof-Trusses.pdf
PDF
Operating System & Kernel Study Guide-1 - converted.pdf
PDF
PRIZ Academy - 9 Windows Thinking Where to Invest Today to Win Tomorrow.pdf
DOCX
573137875-Attendance-Management-System-original
DOCX
ASol_English-Language-Literature-Set-1-27-02-2023-converted.docx
PDF
Automation-in-Manufacturing-Chapter-Introduction.pdf
PDF
Mitigating Risks through Effective Management for Enhancing Organizational Pe...
PPTX
OOP with Java - Java Introduction (Basics)
BMEC211 - INTRODUCTION TO MECHATRONICS-1.pdf
Foundation to blockchain - A guide to Blockchain Tech
Mechanical Engineering MATERIALS Selection
Engineering Ethics, Safety and Environment [Autosaved] (1).pptx
Geodesy 1.pptx...............................................
web development for engineering and engineering
Enhancing Cyber Defense Against Zero-Day Attacks using Ensemble Neural Networks
Infosys Presentation by1.Riyan Bagwan 2.Samadhan Naiknavare 3.Gaurav Shinde 4...
UNIT-1 - COAL BASED THERMAL POWER PLANTS
FINAL REVIEW FOR COPD DIANOSIS FOR PULMONARY DISEASE.pptx
Safety Seminar civil to be ensured for safe working.
additive manufacturing of ss316l using mig welding
TFEC-4-2020-Design-Guide-for-Timber-Roof-Trusses.pdf
Operating System & Kernel Study Guide-1 - converted.pdf
PRIZ Academy - 9 Windows Thinking Where to Invest Today to Win Tomorrow.pdf
573137875-Attendance-Management-System-original
ASol_English-Language-Literature-Set-1-27-02-2023-converted.docx
Automation-in-Manufacturing-Chapter-Introduction.pdf
Mitigating Risks through Effective Management for Enhancing Organizational Pe...
OOP with Java - Java Introduction (Basics)
Ad

Data Structures and Algorithms Slides Session 1. January 21, 2009 Lecture1.pdf

  • 1. Data Structures and Algorithms Session 1. January 21, 2009 Instructor: Bert Huang http://www.cs.columbia.edu/~bert/courses/3137
  • 3. About the Course: Description Lectures: Monday/Wednesday 2:40-3:55 PM Mudd 633 We will study: commonly used data structures and algorithms, how to analyze these data structures and algorithms.
  • 4. About the Course: Staff Bert Huang Office hours: Monday 4-6 PM (after class) CEPSR/Schapiro Building 624 bert@cs.columbia.edu TA’s: Priyamvad Deshmukh, prd2112@columbia.edu Manu N, mn2370@columbia.edu Nikhil Ramesh, nf2241@columbia.edu
  • 5. About the Course: Reading Data Structures and Algorithm Analysis in Java, 2nd Edition by Mark Allen Weiss. ISBN-10: 0321370139
  • 6. About the Course: Resources Course homepage: http://www.cs.columbia.edu/~bert/courses/3137 Courseworks: http://courseworks.columbia.edu Textbook Errata: http://users.cs.fiu.edu/~weiss/dsaajava2/errata.html Textbook Source Code: http://users.cs.fiu.edu/~weiss/dsaajava2/code/
  • 7. About the Course: Prerequisites etc. COMS W1007: Object-Oriented Programming and Design in Java (or equivalent) Co-requisite COMS W3203: Discrete Mathematics COMS W3134: Data Structures and Algorithms (less intense but covers similar topics for non-majors)
  • 8. About the Course: Grading 50% Homework Assignments (six) 20% Midterm Exam (closed book, closed notes) 30% Final Exam (closed book, closed notes)
  • 9. About the Course: Academic Honesty You must read the Computer Science department’s academic honesty policy listed at http://www.cs.columbia.edu/education/honesty/ Additional Comments: Plagiarism is easy to catch. All homework and exams in this class are individual assignments. No collaboration.
  • 10. About the Course: Expectations Attend class Ask questions Read assigned text Start homework early Write well and clearly Get help when you need it
  • 11. About the Course: Grievances Write reports of grading disputes on paper Provide clear explanation of the disagreement Give report to TA, TA will decide if correction is warranted If there is still disagreement, submit grading dispute report to me
  • 12. Definitions Data Structure - abstract way to organize information Algorithm - abstract way to perform computation tasks
  • 13. Data Structures Variables: boolean, int/byte/short/long, float/double, char Arrays, Strings We’ll go over more advanced structures: linked lists, trees, heaps, graphs, hash tables, etc. Smarter data structures can be abstracted
  • 14. Benefits of Abstraction Consider Java Strings We use them all the time How is the text in a String object stored? When we call the length() method, how does it find the length? How does it concatenate strings?
  • 15. Course Goals A series of case studies on common data structures and algorithms Gain intuition about how to design useful and efficient data structures Understand how to analyze any data structure or algorithm
  • 16. Algorithm Analysis We must analyze algorithms’ and data structures’ running times and memory requirements. Input data nowadays are huge. Need efficient algorithms. Over 100 million facebook.com users with profiles, photos Google’s system indexes over 1 trillion (1,000,000,000,000) URLs
  • 17. Next Class We will discuss how to formally analyze algorithms Big-Oh notation
  • 18. Reading Course Website: http://www.cs.columbia.edu/~bert/courses/3137 Academic Honesty policy http://www.cs.columbia.edu/education/honesty Weiss Chapters 1 and 2 Ch. 1 should be about 75% review