1 Data Structures CSCI 132, Spring 2014 Lecture 1 Big Ideas in Data Structures Course website:

Slides:



Advertisements
Similar presentations
Data Structures.
Advertisements

CSCI 311 – Algortihms and Data Structures Steve Guattery Dana 335a (department office) x7-3828
Lecture 16: Tree Traversal.
ISOM MIS 215 Module 7 – Sorting. ISOM Where are we? 2 Intro to Java, Course Java lang. basics Arrays Introduction NewbieProgrammersDevelopersProfessionalsDesigners.
Review. What to know You are responsible for all material covered in lecture, the readings, or the programming assignments There will also be some questions.
CMPT 225 Data Structures and Programming. Course information Lecturer: Jan Manuch (Jano), TASC TAs: Osama Saleh,
1-1 CMPT 225 Data Structures and Programming Instructor: Aaron Hunter Section: E300 Campus: Harbour Centre Semester: Spring 2007.
DAST, Spring © L. Joskowicz 1 Data Structures – LECTURE 1 Introduction Motivation: algorithms and abstract data types Easy problems, hard problems.
CS 206 Introduction to Computer Science II 12 / 10 / 2008 Instructor: Michael Eckmann.
1 ES 314 Advanced Programming Lec 2 Sept 3 Goals: Complete the discussion of problem Review of C++ Object-oriented design Arrays and pointers.
DAST, Spring © L. Joskowicz 1 Data Structures – LECTURE 1 Introduction Motivation: algorithms and abstract data types Easy problems, hard problems.
New Mexico Computer Science For All Introduction to Algorithms Maureen Psaila-Dombrowski.
Introduction - The Need for Data Structures Data structures organize data –This gives more efficient programs. More powerful computers encourage more complex.
1 A Introduction to Data Structures and Algorithm Analysis Data Structures Asst. Professor Kiran Soni.
DATA STRUCTURE Subject Code -14B11CI211.
Data Structures and Programming.  John Edgar2.
Data Structures Lecture-1:Introduction
1 Object Oriented Programming Computer Systems Engineering (D2) and Programming (P)
Teaching Teaching Discrete Mathematics and Algorithms & Data Structures Online G.MirkowskaPJIIT.
Data Structures and Programming.  Today:  Administrivia  Introduction to 225, Stacks  Course website: 
HW/SW/FW Allocation – Page 1 of 14CSCI 4717 – Computer Architecture CSCI 4717/5717 Computer Architecture Allocation of Hardware, Software, and Firmware.
1 CS 233 Data Structures and Algorithms 황승원 Fall 2010 CSE, POSTECH.
CSCA48 Course Summary.
Suzanne Westbrook, PhD School of Information: Science, Technology, & Arts Computer Science Dept, UA.
Introduction. 2COMPSCI Computer Science Fundamentals.
Lecture 10: Class Review Dr John Levine Algorithms and Complexity March 13th 2006.
1 Data Structures CSCI 132, Spring 2014 Lecture 3 Programming Principles and Life Read Ch. 1.
Prepared By Ms.R.K.Dharme Head Computer Department.
1 CSC 222: Computer Programming II Spring 2004 See online syllabus at: Course goals:
Data Structures (Second Part) Lecture 1 Bong-Soo Sohn Assistant Professor School of Computer Science and Engineering Chung-Ang University.
Major objective of this course is: Design and analysis of modern algorithms Different variants Accuracy Efficiency Comparing efficiencies Motivation thinking.
Overview of Course Java Review 1. This Course Covers, using Java Abstract data types Design, what you want them to do (OOD) Techniques, used in implementation.
ITEC 2620M Introduction to Data Structures Instructor: Prof. Z. Yang Course Website: ec2620m.htm Office: Tel 3049.
Chapter 1 Data Structures and Algorithms. Primary Goals Present commonly used data structures Present commonly used data structures Introduce the idea.
1 BIM304: Algorithm Design Time: Friday 9-12am Location: B4 Instructor: Cuneyt Akinlar Grading –2 Midterms – 20% and 30% respectively –Final – 30% –Projects.
CSCI 383 Object-Oriented Programming & Design Lecture 4 Martin van Bommel.
ARRAYS IN C/C++ (1-Dimensional & 2-Dimensional) Introduction 1-D 2-D Applications Operations Limitations Conclusion Bibliography.
BITS Pilani Pilani Campus Data Structure and Algorithms Design Dr. Maheswari Karthikeyan Lecture1.
Lecture 1 Data Structures Aamir Zia. Introduction Course outline Rules and regulations Course contents Good Programming Practices Data Types and Data.
1 i206: Lecture 17: Exam 2 Prep ; Intro to Regular Expressions Marti Hearst Spring 2012.
Mohammed I DAABO COURSE CODE: CSC 355 COURSE TITLE: Data Structures.
Advanced Data Structures Lecture 1
Introduction toData structures and Algorithms
CSC 421: Algorithm Design & Analysis
CSCI 311 – Algorithms and Data Structures
Midterm Review.
External Sorting Chapter 13
DATA STRUCTURES AND OBJECT ORIENTED PROGRAMMING IN C++
CSC 421: Algorithm Design & Analysis
Lecture 2 of Computer Science II
Course Description Algorithms are: Recipes for solving problems.
CSC 421: Algorithm Design & Analysis
ECET 370 HELPS Education Your Life-- ecet370helps.com.
ECET 370 Lessons in Excellence-- ecet370.com. ECET 370 Entire Course (Devry) For more course tutorials visit ECET 370 Week 1 Lab 1 ECET.
ECET 370 HELPS Lessons in Excellence- -ecet370helps.com.
ECET370 Education for Service-- ecet370.com. ECET 370 Entire Course (Devry) For more course tutorials visit ECET 370 Week 1 Lab 1 ECET.
ECET 370 HELPS Education for Service- - ecet370helps.com.
Divide and Conquer Methodology
Definition In simple terms, an algorithm is a series of instructions to solve a problem (complete a task) We focus on Deterministic Algorithms Under the.
Objective of This Course
External Sorting Chapter 13
Data Structures: Introductory lecture
Chapter 0 : Introduction to Object Oriented Design
Introduction to Data Structures
Algorithm Design and Analysis
Algorithms CSCI 235, Spring 2019 Lecture 7 Recurrences II
COP3530- Data Structures Introduction
Course Description Algorithms are: Recipes for solving problems.
External Sorting Chapter 13
What is this course about?
Presentation transcript:

1 Data Structures CSCI 132, Spring 2014 Lecture 1 Big Ideas in Data Structures Course website:

2 Crafting a Program Four main ideas used in creating complex computer programs: Data Abstraction Modularity Algorithmic complexity Standard Tools

3 Recall Problem Solving One of the most important problem solving techniques is: Divide Conquer & Glue

4 Dealing with Abstraction Abstraction Allows you to capture common patterns in things and ignore inessential details. Black Box Abstraction Allows us to use things without knowing how they work. For example, a telephone. Data Hiding Allows use of a program component without knowing the specifics of how it is implemented.

5 Layers of Abstraction We can build up layers of abstraction to create complexity. Without layers of abstraction we could not understand the most complex programs (e.g. Microsoft Word ~ 1,000,000 lines of code).

6 Modularity The best programs are modular. The pieces can fit together and be used in many different ways. Lego building blocks are a classic example of modularity.

7 Algorithmic Complexity Not all computer programs are equal. The efficiency of programs can be measured as: 1. The amount of time the program takes to run. 2. The amount of memory space used.

8 Standard Programming Tools Data Structures Stacks Queues Lists Tables Trees Graphs Algorithms Searching Sorting Tree Traversal Graph Algorithms