Jeremy Bolton, PhD Assistant Teaching Professor

Slides:



Advertisements
Similar presentations
Hon Wai Leong, NUS (CS6234, Spring 2009) Page 1 Copyright © 2009 by Leong Hon Wai CS6234: Spring 2009 (Overview) CS6234: Advanced Algorithms  Instructors:
Advertisements

COMP171 Data Structures and Algorithms Spring 2009.
CMSC 132: Object-Oriented Programming II
CMSC 132: Object-Oriented Programming II Nelson Padua-Perez William Pugh Department of Computer Science University of Maryland, College Park.
EE 220 (Data Structures and Analysis of Algorithms) Instructor: Saswati Sarkar T.A. Prasanna Chaporkar, Programming.
July 16, Introduction to CS II Data Structures Hongwei Xi Comp. Sci. Dept. Boston University.
CSCE 3110 Data Structures and Algorithm Analysis.
Data Structures & Agorithms Lecture-1: Introduction.
METU Computer Engineering Department
Computer Science 102 Data Structures and Algorithms V Fall 2009 Lecture 1: administrative details Professor: Evan Korth New York University 1.
CS 450: COMPUTER GRAPHICS COURSE AND SYLLABUS OVERVIEW SPRING 2015 DR. MICHAEL J. REALE.
CS223 Algorithms D-Term 2013 Instructor: Mohamed Eltabakh WPI, CS Introduction Slide 1.
Data Structures Lecture 1: Introduction Azhar Maqsood NUST Institute of Information Technology (NIIT)
Object Oriented Programming (OOP) Design Lecture 1 : Course Overview Bong-Soo Sohn Assistant Professor School of Computer Science and Engineering Chung-Ang.
CSC 212 – Data Structures Prof. Matthew Hertz WTC 207D /
COMPE 226 Data Structures 2015 Fall Murat KARAKAYA Department of Computer Engineering.
Overview Algorithms Baojian Hua
Data Structures (Second Part) Lecture 1 Bong-Soo Sohn Assistant Professor School of Computer Science and Engineering Chung-Ang University.
Introduction to Data Structures
CSE 3358 NOTE SET 1 Data Structures and Algorithms.
Computer Science 102 Data Structures and Algorithms CSCI-UA.0102 Fall 2012 Lecture 1: administrative details Professor: Evan Korth New York University.
Nirmalya Roy School of Electrical Engineering and Computer Science Washington State University Cpt S 223 – Advanced Data Structures Course Introduction.
CSE 3358 NOTE SET 1 Data Structures and Algorithms.
ICS202 Data Structures King Fahd University of Petroleum & Minerals College of Computer Science & Engineering Information & Computer Science Department.
Course overview Course title: Design and Analysis of Algorithms Instructors: Dr. Abdelouahid Derhab Credit hours:
Nirmalya Roy School of Electrical Engineering and Computer Science Washington State University Cpt S 223 – Advanced Data Structures Course Introduction.
COP4610/CGS5765 Operating Systems Syllabus. Instructor Xin Yuan Office: 168 LOV Office hours: W M F 9:10am – 10:00am, or by appointments.
C Programming Lecture 1 : Introduction Bong-Soo Sohn Associate Professor School of Computer Science and Engineering Chung-Ang University.
1 CS 381 Introduction to Discrete Structures Lecture #1 Syllabus Week 1.
Data Structures and Algorithms in Java AlaaEddin 2012.
ELEC 1009E-1B02 Introduction to Computer Science 計算機概論 2011 Fall.
Course Overview Stephen M. Thebaut, Ph.D. University of Florida Software Engineering.
1 CENG 707 Data Structures and Algorithms Nihan Kesim Çiçekli Department of Computer Engineering Middle East Technical University Fall 2013.
CENG 213 Data Structures1 Nihan Kesim Çiçekli Department of Computer Engineering Middle East Technical University.
COMP9024: Data Structures and Algorithms Course Outline Hui Wu Session 1, 2016
CS16: Introduction to Algorithms and Data Structures
CENG 707 Data Structures and Algorithms
Computer Engineering Department Islamic University of Gaza
COMP9024: Data Structures and Algorithms
COMP 283 Discrete Structures
CENG 213 Data Structures Nihan Kesim Çiçekli
March 27 – Course introductions; Adts; Stacks and Queues
CENG 213 Data Structures Dr. Cevat Şener
ICE 245: Algorithms Instructor: Dr. Mohammad Arifuzzaman
CS5040: Data Structures and Algorithms
CPSC 311 Section 502 Analysis of Algorithm
Introduction of ECE665 Computer Algorithms
Data Structures Algorithms: (Slides to be Adopted from Goodrich and aligned with Weiss' book) Instructor: Ganesh Ramakrishnan
Computer Science 102 Data Structures CSCI-UA
September 27 – Course introductions; Adts; Stacks and Queues
COSC051: Computer Science I
CS 201 – Data Structures and Discrete Mathematics I
CS 201 – Data Structures and Discrete Mathematics I
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.
EEL4930/5934 Reconfigurable Computing
Jeremy Bolton, PhD Assistant Teaching Professor
Introduction CSE 373 Data Structures.
CENG 213 Data Structures Nihan Kesim Çiçekli
Introduction to CS II Data Structures
CMPT 438 Algorithms Instructor: Tina Tian.
Multimedia Systems Reference Text
First Semester 1439/1440 Welcome 
Administrivia- Introduction
C Programming Lecture 1 : Introduction
CSCE 221 Professor Lupoli TAMU CSCE 221 Intro.
C Programming Lecture 1 : Introduction
Administrivia- Introduction
Design and Analysis of Algorithms (04 Credits / 4 hours per week)
EEL4930/5934 Reconfigurable Computing
Advanced Analysis of Algorithms
Presentation transcript:

Jeremy Bolton, PhD Assistant Teaching Professor COSC160: Data Structures Jeremy Bolton, PhD Assistant Teaching Professor

Outline Welcome! Course Overview Course Expectations Grading Assignments Ethics Goals

Welcome! COSC-160 – Data Structures Instructor: Jeremy Bolton, Ph.D.   Instructor: Jeremy Bolton, Ph.D. Assistant Teaching Professor Department of Computer Science Email: jeremy.bolton@georgetown.edu Office Hours: Daily hours will be entered on Canvas calendar (or by appointment) TAs: TBD (see Canvas calendar for office hours)

Course Summary This course is designed as a second year course for majors and minors and covers basic data structures and algorithm analysis. Starting with the art and science of analyzing algorithms, the main goal of this course is to learn various techniques for organizing data so that computer programs can access, modify, and delete data efficiently. Topics covered include basic data structures (for example, lists, stacks and queues), trees, hashing, heaps, disjoint sets, and graphs, self-adjusting data structures; worst-case, average-case, and amortized analysis; and basic problem solving techniques. The topics are theoretical in nature but have dramatic impact in practice. Credits: 3 Prerequisites: COSC-052 and (COSC-030 or MATH-200)

Required Text Data Structures and Algorithms in C++ | Edition: 4 Author: Adam Drozdek ISBN: 9781133608424 Publication Date: 08/27/2012 Publisher: Cengage Learning

Optional References Strongly Recommended Other supplemental references: Data Structures and Algorithm Analysis in C++ Author: Mark A. Weiss ISBN: 9780132847377 Data Structures, Algorithms, and Applications in C++ Author: Sartaj Sahni ISBN: 9780929306322 Data Structures and Algorithms in Python Author: Michael T. Goodrich ISBN: 9781118290279 Introduction to Algorithms | Edition: 3 Author: Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest ISBN: 9780262033848 Pub. Date: 07/31/2009 Publisher: MIT Press

Course Website http://jeremybolton.georgetown.domains/courses/ds/

Notes about Coding Notes about coding and coding practices: Coding projects are an integral part of this course! It is assumed that you have a proficient understanding of a programming language. Students are responsible for learning and/or reviewing, as needed, the programming language chosen. Cheating will not be tolerated. Any form of cheating will be reported to the GU honor council. Please read the following guidelines for project submissions: Discussion among students pertaining to project content and general methodology is allowed; however, students are NOT ALLOWED to share code, copy code, or use code of others without an explicit disclosure. A student may be asked to present, demonstrate, or explain a project submission at any time, without notice. At my sole discretion, a student’s project grade can be adjusted based on this presentation, demonstration, and/or explanation. If a student does not sufficiently understand or explain their submission, further action may be taken. Due Dates will be posted in Blackboard/Canvas or announced in class.

Notes about programming Projects Design details will largely be left up to you. Learning to design structures is an integral part of this course. Class discussions will largely be programming-language independent I may discuss some examples and code snippets (likely in C++)

Projects Self – Reliance : Design and Debugging Students are largely expected to be proficient in a programming language at this point. Students are expected to review C++ resources as needed. By the end of this course, students should have basic design skills and should be largely self-reliant for design, coding, and testing/debugging stages. All students are encouraged to produce design documents (e.g. UML class diagrams and flow diagrams) for programming projects. I will request to see design documents for a project before providing assistance.

Goals of Data Structures Course Learn about existing Data Structures. Learn about their motivations. Learn how to assess them. Computer science is the art of problem solving. We will not only review existing data structures… Cannot always simply apply existing data structures to solve ALL problems. Learn to Design, Implement and Assess your own data structures for specific problems

Goals Learn standard data structures and concepts. Learn to problem solve and design structures for unique problems. Learn tradeoffs in design schemes Learn to design efficient solutions Working Independently: Programming and Debugging Theoretical Analysis of Structures and Associated Algorithms

Data Structures and Algorithms Algorithm and Data Structure concepts are interwoven We will focus on the structure perspective, but algorithms will be discussed as well Course will have a practical and theoretical aspect