Discrete Structures and The Three-Fold Introduction to Computer Science Doug Baldwin Department of Computer Science SUNY Geneseo.

Slides:



Advertisements
Similar presentations
Chapter 1: INTRODUCTION TO DATA STRUCTURE
Advertisements

Beauty in Recursion, Fractals Gur Saran Adhar Computer Science Department.
INTRODUCTION TO CS16 CS16: Introduction to Algorithms and Data Structures Tu/Th 10:30-11:50 Metcalf Auditorium David Laidlaw Thursday, January 23, 2014.
CS16: Data Structures & Algorithms | Spring 2014 Midterm Review 3/16/
Analysis & Design of Algorithms (CSCE 321)
Introductory Computer Science Courses Past experiences & thoughts Haakon Ringberg, Thomson Research Paris & Princeton University.
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.
Overview CS113, Fall 2000 Gene Itkis. The Promise Heavy Fast-paced Challenging Rewarding.
CS 101 Course Summary December 5, Big Ideas Abstraction Problem solving Fundamentals of programming.
Review for Test 2 i206 Fall 2010 John Chuang. 2 Topics  Operating System and Memory Hierarchy  Algorithm analysis and Big-O Notation  Data structures.
CS 112 Intro to Computer Science II Sami Rollins Spring 2007.
Data & Storage Structures: Introductions & Overview Introduction to Data Structures Introduction to Data Structures Introduction to Storage structures.
Course Introduction CS 1037 Fundamentals of Computer Science II.
Recursive Algorithms Nelson Padua-Perez Chau-Wen Tseng Department of Computer Science University of Maryland, College Park.
UMass Lowell Computer Science Analysis of Algorithms Prof. Karen Daniels Fall, 2001 Lecture 1 Introduction/Overview Wed. 9/5/01.
CS503: Tenth Lecture, Fall 2008 Review Michael Barnathan.
UMass Lowell Computer Science Analysis of Algorithms Prof. Karen Daniels Fall, 2005 Lecture 1 Introduction/Overview Text: Chapters 1, 2 Wed. 9/7/05.
UMass Lowell Computer Science Analysis of Algorithms Prof. Karen Daniels Spring, 2001 Lecture 1 Introduction/Overview Wed. 1/31/01.
UMass Lowell Computer Science Analysis of Algorithms Prof. Karen Daniels Fall, 2000 Lecture 1 Introduction/Overview Wed. 9/6/00.
Discrete Structures for Computer Science Ruoming Jin MW 5:30 – 6:45pm Fall 2009 rm MSB115.
Data Structures, Spring 2004 © L. Joskowicz 1 DAST – Final Lecture Summary and overview What we have learned. Why it is important. What next.
Fundamental in Computer Science Recursive algorithms 1.
Data Structures Lecture-1:Introduction
Teaching Teaching Discrete Mathematics and Algorithms & Data Structures Online G.MirkowskaPJIIT.
Programming Concepts Jacques Tiberghien office : Mobile :
Recursion, Complexity, and Searching and Sorting By Andrew Zeng.
1 CS 233 Data Structures and Algorithms 황승원 Fall 2010 CSE, POSTECH.
1 Chapter 24 Developing Efficient Algorithms. 2 Executing Time Suppose two algorithms perform the same task such as search (linear search vs. binary search)
Mathematics in Computer Science at Loras College Steve Mosiman.
Computer Science Department Data Structures and Algorithms Lecture 1.
Course overview Course title: Discrete mathematics for Computer Science Instructors: Dr. Abdelouahid Derhab Credit.
Penn State University Spring 2013
Relationships Between Structures “→” ≝ “Can be defined in terms of” Programs Groups Proofs Trees Complex numbers Operators Propositions Graphs Real.
CS212: DATA STRUCTURES Lecture 1: Introduction. What is this course is about ?  Data structures : conceptual and concrete ways to organize data for efficient.
Major objective of this course is: Design and analysis of modern algorithms Different variants Accuracy Efficiency Comparing efficiencies Motivation thinking.
INTRODUCTION. What is an algorithm? What is a Problem?
Chapter 12 Binary Search and QuickSort Fundamentals of Java.
1 BIM304: Algorithm Design Time: Friday 9-12am Location: B4 Instructor: Cuneyt Akinlar Grading –2 Midterms – 20% and 30% respectively –Final – 30% –Projects.
Discrete Mathematics ( 離散數學 ) Ming-Jer Tsai. Outline What is Discrete Mathematics? Why learn Discrete Mathematics? What will be taught in the class? How.
1 CPSC 320: Intermediate Algorithm Design and Analysis July 16, 2014.
Course Review Fundamental Structures of Computer Science Margaret Reid-Miller 29 April 2004.
Algorithms & Data Structures (M) 2013–14 Prof David A Watt Moodle: Computing Science → Algorithms & Data Structures (IT) © 2008 David A Watt, University.
Tim Roughgarden Introduction Merge Sort (Analysis ) Design and Analysis of Algorithms I.
Unity and Algorithms academy.zariba.com Module Overview Lecture 1.
Design and Analysis of Algorithms (09 Credits / 5 hours per week) Sixth Semester: Computer Science & Engineering M.B.Chandak
1Computer Sciences Department. Objectives Recurrences.  Substitution Method,  Recursion-tree method,  Master method.
CES 592 Theory of Software Systems B. Ravikumar (Ravi) Office: 124 Darwin Hall.
CS321 Spring 2016 Lecture 3 Jan Admin A1 Due this Friday – 11:00PM Thursday = Recurrence Equations – Important. Everyone Should be added to class.
Course Introductions.  Introduction to java  Basics of Java  Classes & Objects  Java Collections and APIs  Algorithms and their analysis  Recursion.
ALGORITHM ANALYSIS Analysis of Resource consumption by processor –Time –Memory –Number of processors –Power Proof that the algorithm works correctly Debasis.
Analysis of Algorithms: Math Review Richard Kelley, Lecture 2.
CS16: Introduction to Algorithms and Data Structures
Design and Analysis of Algorithms (09 Credits / 5 hours per week)
Introduction to Algorithms: Recurrences
Accelerators to Applications
Discrete Math (2) Haiming Chen Associate Professor, PhD
CS 3343: Analysis of Algorithms
Design and Analysis of Algorithms (07 Credits / 4 hours per week)
* 312 Foundations II 332 Data Abstractions 311 I 351 Hw/Sw Interface
در اين درس مباني ساختمان داده ها و الگوريتم ها تدریس میشود.
CS 3343: Analysis of Algorithms
Objective of This Course
Discrete Math (2) Haiming Chen Associate Professor, PhD
CSS 342 Data Structures, Algorithms, and Discrete Mathematics I
Adrienne Decker Department of Computer Science & Engineering
INTRODUCTION TO ALOGORITHM DESIGN STRATEGIES
DS.I.1 CSE 373: Data Structures and Algorithms Autumn Quarter 2000
Department of Computer Science & Engineering
Design and Analysis of Algorithms (04 Credits / 4 hours per week)
Presentation transcript:

Discrete Structures and The Three-Fold Introduction to Computer Science Doug Baldwin Department of Computer Science SUNY Geneseo

Motivation Computer science entails… Design and implementation of algorithms, programs, systems, etc Mathematical analysis of algorithms, programs, etc Experimental analysis of algorithms, programs, etc These should be taught concurrently and from day 1

Ca 1992… CS1 (Pascal, selection, logic, recursion, induction, recurrences, big-O, lists, trees) CS1 (Pascal, selection, logic, recursion, induction, recurrences, big-O, lists, trees) CS2 (Object Pascal, iteration, arrays, sorting, summations, …) CS2 (Object Pascal, iteration, arrays, sorting, summations, …)

Ca 1992… CS1 (Pascal, selection, logic, recursion, induction, recurrences, big-O, lists, trees) CS1 (Pascal, selection, logic, recursion, induction, recurrences, big-O, lists, trees) CS2 (Object Pascal, iteration, arrays, sorting, summations, …) CS2 (Object Pascal, iteration, arrays, sorting, summations, …) ? !

Ca 1994… CS1 (Pascal, recursion, induction, …) CS1 (Pascal, recursion, induction, …) CS2 (Object Pascal, iteration, summations, …) CS2 (Object Pascal, iteration, summations, …) CS0 (CS overview, computational thinking) CS0 (CS overview, computational thinking)

Ca 1994… CS1 (Pascal, recursion, induction, …) CS1 (Pascal, recursion, induction, …) CS2 (Object Pascal, iteration, summations, …) CS2 (Object Pascal, iteration, summations, …) CS0 (CS overview, computational thinking) CS0 (CS overview, computational thinking) ? !

ca 1999 CS 1-1/2 (logic, recursion, induction, recurrences, big-O, lists, trees) CS 1-1/2 (logic, recursion, induction, recurrences, big-O, lists, trees) CS2 (OOP, summations, sorting, searching, E[…], hashing) CS2 (OOP, summations, sorting, searching, E[…], hashing) CS 1 (Java) CS 1 (Java) Algorithms (graphs, greedy, dynamic programming, …) Algorithms (graphs, greedy, dynamic programming, …)

ca 1999 ? CS 1-1/2 (logic, recursion, induction, recurrences, big-O, lists, trees) CS 1-1/2 (logic, recursion, induction, recurrences, big-O, lists, trees) CS2 (OOP, summations, sorting, searching, E[…], hashing) CS2 (OOP, summations, sorting, searching, E[…], hashing) CS 1 (Java) CS 1 (Java) Algorithms (graphs, greedy, dynamic programming, …) Algorithms (graphs, greedy, dynamic programming, …)

Ca Present CS 2 (OOP, recursion, lists, trees, Big O) CS 2 (OOP, recursion, lists, trees, Big O) CS 2-1/2 (logic, induction, recurrences, summations, sorting, searching) CS 2-1/2 (logic, induction, recurrences, summations, sorting, searching) CS 1 (Java) CS 1 (Java) Algorithms (probability, E[…], hashing, graphs, greedy, …) Algorithms (probability, E[…], hashing, graphs, greedy, …)

Ca Present CS 2 (OOP, recursion, lists, trees, Big O) CS 2 (OOP, recursion, lists, trees, Big O) CS 2-1/2 (logic, induction, recurrences, summations, sorting, searching) CS 2-1/2 (logic, induction, recurrences, summations, sorting, searching) CS 1 (Java) CS 1 (Java) Algorithms (probability, E[…], hashing, graphs, greedy, …) Algorithms (probability, E[…], hashing, graphs, greedy, …) If n = 0 … Assume T(k) T(k+1)…

Summary Workable model for integrating discrete structures into introductory/intermediate CS – Works for students – Works for department (10 year record) Covers most of CC 2001 (and CS 2013) core DS material (exceptions: counting, sets/functions/relations)