110 likes | 121 Views
This article explores the benefits of integrating discrete structures, such as algorithms and mathematical analysis, into introductory computer science courses. It discusses the advantages for both students and departments and highlights how this approach aligns with CC 2001 and CS 2013 core DS material.
E N D
Discrete StructuresandThe 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… CS2 (Object Pascal, iteration, arrays, sorting, summations, …) CS1 (Pascal, selection, logic, recursion, induction, recurrences, big-O, lists, trees)
Ca 1992… ? ! CS2 (Object Pascal, iteration, arrays, sorting, summations, …) CS1 (Pascal, selection, logic, recursion, induction, recurrences, big-O, lists, trees)
Ca 1994… CS2 (Object Pascal, iteration, summations, …) CS1 (Pascal, recursion, induction, …) CS0 (CS overview, computational thinking)
Ca 1994… ? ! CS2 (Object Pascal, iteration, summations, …) CS1 (Pascal, recursion, induction, …) CS0 (CS overview, computational thinking)
ca 1999 Algorithms (graphs, greedy, dynamic programming, …) CS2 (OOP, summations, sorting, searching, E[…], hashing) CS 1-1/2 (logic, recursion, induction, recurrences, big-O, lists, trees) CS 1 (Java)
ca 1999 Algorithms (graphs, greedy, dynamic programming, …) ? CS2 (OOP, summations, sorting, searching, E[…], hashing) CS 1-1/2 (logic, recursion, induction, recurrences, big-O, lists, trees) CS 1 (Java)
Ca 2003 - Present Algorithms (probability, E[…], hashing, graphs, greedy, …) CS 2-1/2 (logic, induction, recurrences, summations, sorting, searching) CS 2 (OOP, recursion, lists, trees, Big O) CS 1 (Java)
Ca 2003 - Present Algorithms (probability, E[…], hashing, graphs, greedy, …) CS 2-1/2 (logic, induction, recurrences, summations, sorting, searching) CS 2 (OOP, recursion, lists, trees, Big O) If n = 0 … Assume T(k) T(k+1)… CS 1 (Java)
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)