CSC 330 Class Information and Syllabus

Similar documents
BUS Computer Concepts and Applications for Business Fall 2012

Data Structures and Algorithms

Math 181, Calculus I

Accounting 312: Fundamentals of Managerial Accounting Syllabus Spring Brown

INTERMEDIATE ALGEBRA Course Syllabus

Required Materials: The Elements of Design, Third Edition; Poppy Evans & Mark A. Thomas; ISBN GB+ flash/jump drive

CPMT 1303 Introduction to Computer Technology COURSE SYLLABUS

EECS 700: Computer Modeling, Simulation, and Visualization Fall 2014

BA 130 Introduction to International Business

Course Content Concepts

SYLLABUS. EC 322 Intermediate Macroeconomics Fall 2012

CIS Introduction to Digital Forensics 12:30pm--1:50pm, Tuesday/Thursday, SERC 206, Fall 2015

Office Hours: Day Time Location TR 12:00pm - 2:00pm Main Campus Carl DeSantis Building 5136

ACC 380K.4 Course Syllabus

ACC 362 Course Syllabus

CS 1103 Computer Science I Honors. Fall Instructor Muller. Syllabus

DIGITAL GAMING AND SIMULATION Course Syllabus Advanced Game Programming GAME 2374

MKT ADVERTISING. Fall 2016

Class Tuesdays & Thursdays 12:30-1:45 pm Friday 107. Office Tuesdays 9:30 am - 10:30 am, Friday 352-B (3 rd floor) or by appointment

CS 3516: Computer Networks

CIS 121 INTRODUCTION TO COMPUTER INFORMATION SYSTEMS - SYLLABUS


Social Media Journalism J336F Unique ID CMA Fall 2012

Financial Accounting Concepts and Research

Instructor: Matthew Wickes Kilgore Office: ES 310

Scottsdale Community College Spring 2016 CIS190 Intro to LANs CIS105 or permission of Instructor

ASTRONOMY 2801A: Stars, Galaxies & Cosmology : Fall term

JN2000: Introduction to Journalism Syllabus Fall 2016 Tuesdays and Thursdays 12:30 1:45 p.m., Arrupe Hall 222

Syllabus - ESET 369 Embedded Systems Software, Fall 2016

ACC : Accounting Transaction Processing Systems COURSE SYLLABUS Spring 2011, MW 3:30-4:45 p.m. Bryan 202

Spring 2015 IET4451 Systems Simulation Course Syllabus for Traditional, Hybrid, and Online Classes

Office Hours: Mon & Fri 10:00-12:00. Course Description

Penn State University - University Park MATH 140 Instructor Syllabus, Calculus with Analytic Geometry I Fall 2010

AGN 331 Soil Science Lecture & Laboratory Face to Face Version, Spring, 2012 Syllabus

SPM 5309: SPORT MARKETING Fall 2017 (SEC. 8695; 3 credits)

English Policy Statement and Syllabus Fall 2017 MW 10:00 12:00 TT 12:15 1:00 F 9:00 11:00

Beginning and Intermediate Algebra, by Elayn Martin-Gay, Second Custom Edition for Los Angeles Mission College. ISBN 13:

WSU Five-Year Program Review Self-Study Cover Page

HUMAN ANATOMY AND PHYSIOLOGY II

CHEMISTRY 104 FALL Lecture 1: TR 9:30-10:45 a.m. in Chem 1351 Lecture 2: TR 1:00-2:15 p.m. in Chem 1361

CS 100: Principles of Computing

McKendree University School of Education Methods of Teaching Elementary Language Arts EDU 445/545-(W) (3 Credit Hours) Fall 2011

MAR Environmental Problems & Solutions. Stony Brook University School of Marine & Atmospheric Sciences (SoMAS)

CPMT 1347 Computer System Peripherals COURSE SYLLABUS

Course Syllabus It is the responsibility of each student to carefully review the course syllabus. The content is subject to revision with notice.

CSCI 333 Java Language Programming Fall 2017 INSTRUCTOR INFORMATION COURSE INFORMATION

CS Course Missive

University of Waterloo School of Accountancy. AFM 102: Introductory Management Accounting. Fall Term 2004: Section 4

GACE Computer Science Assessment Test at a Glance

Please read this entire syllabus, keep it as reference and is subject to change by the instructor.

ENV , ENV rev 8/10 Environmental Soil Science Syllabus

Social Media Marketing BUS COURSE OUTLINE

STA2023 Introduction to Statistics (Hybrid) Spring 2013

MGMT3274 INTERNATONAL BUSINESS PROCESSES AND PROBLEMS

GEOG Introduction to GIS - Fall 2015

CHEM:1070 Sections A, B, and C General Chemistry I (Fall 2017)

ECON492 Senior Capstone Seminar: Cost-Benefit and Local Economic Policy Analysis Fall 2017 Instructor: Dr. Anita Alves Pena

TROY UNIVERSITY MASTER OF SCIENCE IN INTERNATIONAL RELATIONS DEGREE PROGRAM

Psychology 102- Understanding Human Behavior Fall 2011 MWF am 105 Chambliss

Biology 1 General Biology, Lecture Sections: 47231, and Fall 2017

COURSE WEBSITE:

COURSE SYLLABUS: CPSC6142 SYSTEM SIMULATION-SPRING 2015

Economics 201 Principles of Microeconomics Fall 2010 MWF 10:00 10:50am 160 Bryan Building

Math 22. Fall 2016 TROUT

MTH 215: Introduction to Linear Algebra

ECO 2013: PRINCIPLES OF MACROECONOMICS Spring 2017

Class Meeting Time and Place: Section 3: MTWF10:00-10:50 TILT 221

Management 4219 Strategic Management

Prerequisite: General Biology 107 (UE) and 107L (UE) with a grade of C- or better. Chemistry 118 (UE) and 118L (UE) or permission of instructor.

Course Syllabus. Course Information Course Number/Section OB 6301-MBP

GERM 3040 GERMAN GRAMMAR AND COMPOSITION SPRING 2017

Appalachian State University Department of Family and Child Studies FCS 3107: Variations in Development in Early Childhood Fall 2015

SOUTHERN MAINE COMMUNITY COLLEGE South Portland, Maine 04106

IST 440, Section 004: Technology Integration and Problem-Solving Spring 2017 Mon, Wed, & Fri 12:20-1:10pm Room IST 202

Course Syllabus. Alternatively, a student can schedule an appointment by .

Hist 1210, World History 1 Fall 2014

HCI 440: Introduction to User-Centered Design Winter Instructor Ugochi Acholonu, Ph.D. College of Computing & Digital Media, DePaul University

Computer Science 1015F ~ 2016 ~ Notes to Students

CALCULUS I Math mclauh/classes/calculusi/ SYLLABUS Fall, 2003

Department of Accounting ACC Fundamentals of Financial Accounting Fall, 2015 Syllabus

Applied Trumpet V VIII

Computer Architecture CSC

COMM370, Social Media Advertising Fall 2017

Astronomy/Physics 1404 Introductory Astronomy II Course Syllabus

CHMB16H3 TECHNIQUES IN ANALYTICAL CHEMISTRY

Jeff Walker Office location: Science 476C (I have a phone but is preferred) 1 Course Information. 2 Course Description

COURSE INFORMATION. Course Number SER 216. Course Title Software Enterprise II: Testing and Quality. Credits 3. Prerequisites SER 215

CS 101 Computer Science I Fall Instructor Muller. Syllabus

FINN FINANCIAL MANAGEMENT Spring 2014

SOUTHWEST COLLEGE Department of Mathematics

Business Analytics and Information Tech COURSE NUMBER: 33:136:494 COURSE TITLE: Data Mining and Business Intelligence

Instructor Experience and Qualifications Professor of Business at NDNU; Over twenty-five years of experience in teaching undergraduate students.

THE UNIVERSITY OF SYDNEY Semester 2, Information Sheet for MATH2068/2988 Number Theory and Cryptography

Office: Colson 228 Office Hours: By appointment

Syllabus: CS 377 Communication and Ethical Issues in Computing 3 Credit Hours Prerequisite: CS 251, Data Structures Fall 2015

Spring 2014 SYLLABUS Michigan State University STT 430: Probability and Statistics for Engineering

Foothill College Fall 2014 Math My Way Math 230/235 MTWThF 10:00-11:50 (click on Math My Way tab) Math My Way Instructors:

BUSINESS FINANCE 4265 Financial Institutions

DEPARTMENT OF THE AIR FORCE AIR UNIVERSITY (AETC)

ENEE 302h: Digital Electronics, Fall 2005 Prof. Bruce Jacob

Transcription:

The University of North Carolina at Greensboro Handout 1 CSC 330: Advanced Data Structures August 23, 2016 Prof. Stephen R. Tate CSC 330 Class Information and Syllabus Instructor: Stephen R. Tate (Steve) Lectures: Tues/Thurs 12:30 1:45, Petty 217 Office: Petty 166 Office Hours: Tues/Thurs 10:00 11:30, or by appointment Phone: 336-256-1033 E-mail: srtate@uncg.edu Class Web Site: http://www.uncg.edu/cmp/faculty/srtate/330/ Textbook (required): Mark Allen Weiss. Data Structures and Problem Solving Using Java, 4th edition, Addison Wesley, ISBN 0 321 54140 5. Catalog Description: Static and dynamic data structures emphasizing binary trees and graphs. Advanced programming techniques. Advanced sorting and searching algorithms. Hashing techniques. Performance analysis. Methods of developing large applications programs. Prerequisites: Students should have completed CSC 230 and CSC 250 with a C or better in each. See the end of this handout for detailed information on assumed background. Student Learning Outcomes: Upon successful completion of this course students will have demonstrated that they 1. understand and use advanced features of Java such as inheritance and generics; 2. can design divide-and-conquer algorithms using three steps and apply to merge sort, quick sort, dynamic programming, and backtracking; 3. understand tree representation and traversals; 4. understand associative containers, red-black trees, and hashing; 5. understand graph representations, traversals, and basic graph algorithms.

2 Handout 1: CSC 330 Class Information and Syllabus Class Structure: Class will meet twice a week for 75 minutes. Class time will include brief overviews of the material, but students are expected to have completed the textbook readings before class so that the majority of class time can be used for discussing the material, answering questions and clarifying topics from the book, and working through examples. If students do not keep up with readings, the instructor may give in-class quizzes or small reading-summary assignments as extra motivation. On some days (which will be announced in advance) we may meet in a computer lab. Assignments: Assignments will be both written and programming. Programs must be written in Java, and must compile and work correctly in Netbeans version 8.1 with Java 8 (this is the version on the UNCG Computer Lab machines, and is freely available to download and install on your personal computers). The instructor will not make any adjustments to a student s code when grading, so if any submitted program does not compile the student will get a zero on the correctness portion of the grade (or 50 points off the overall grade), with no exceptions. More information on grading criteria and program submission instructions will be distributed and discussed before the first assignment. Written assignment solutions must be turned in on paper at the beginning of class (solutions can be handwritten or typed). Late Policy and Makeup Exams: Assignments are due at the beginning of class on the due date, and may be turned in up to 7 calendar days late with a 25% late penalty. Students with planned absences, whether for university events, religious observance, or other reason, are expected to make arrangements with the instructor to turn in assignments or take exams before the scheduled date of the assignment or test. No assignment will be accepted more than 7 calendar days after the original due date! Exam/test dates are on the schedule on the following page if there are any changes, they will be announced at least two weeks in advance if possible. A missed exam may be made up only if it was missed due to an extreme emergency and arrangements are made before the exam date. Exams (including the final) may not be taken early or late due to personal travel plans. Evaluation and Grading: Each student activity will contribute to the final grade in the class according to the following percentages. Assignments Mid-semester exams (15 points each) Final exam 50 points 30 points 20 points

Handout 1: CSC 330 Class Information and Syllabus 3 Tentative Schedule: Date Topic Reading Aug 23 Class Introduction and Simple Review Aug 25 CSC 230 Review with Programming Style Guidelines 6.1 6.6 Aug 30 More review examples, and iterators Sep 1 Sets and Maps 6.7 6.8 Sep 6 Trees: Definitions and Traversals Chapter 18 Sep 8 Trees: Working with trees and traversals Sep 13 Binary Search Trees: Basics 19.1 19.3 Sep 15 Binary Search Trees: Balancing concepts and AVL trees 19.4 Sep 20 Binary Search Trees: Red-Black Trees 19.5 Sep 22 Hashing Part 1 20.1 20.3 Sep 27 Hashing Part 2 20.4 20.6 Sep 29 Make-up/slack/review day Oct 4 Exam 1 Oct 6 Priority Queues and Heaps 21.1 21.3 Oct 11 Heapsort and other applications 21.5 Oct 13 Algorithm design: Divide and Conquer 7.5, 8.5, 8.6 Oct 18 Fall break no class Oct 20 Algorithm design: Dynamic Programming 7.6 Oct 25 Algorithm design: Backtracking 7.7 Oct 27 Algorithm design: Greedy 12.1 Nov 1 Make-up/slack/review day Nov 3 Exam 2 Nov 8 Graphs: Terminology, Representations, and Traversals 14.1 14.2 Nov 10 Graphs: Terminology, Representations, and Traversals cont d Nov 15 Weighted Graphs and Paths 14.3 14.4 Nov 17 Minimum Spanning Trees Handouts Nov 22 Acyclic Graphs and Applications 14.5 Nov 24 Thanksgiving no class Nov 29 Advanced topic (tentative: disk-based data structures) Dec 1 Class Review Dec 8 Final Exam (12:00 3:00PM)

4 Handout 1: CSC 330 Class Information and Syllabus Academic Integrity: Students are required to sign the Academic Integrity Pledge on any work they do. The pledge is the statement I have abided by the UNCG Academic Integrity Policy on this assignment. For information on the UNCG Academic Integrity Policy, see http://academicintegrity.uncg.edu/. Assignments in this class are for individual work, unless explicitly stated otherwise. General concepts and material covered in the class may be discussed with other students or in study groups, but specific assignments should not be discussed and any submitted work should be done entirely your own. Programs should always be 100% your own work and represent your independent thinking, and code should never be copied from the Internet or from another student. The instructor uses a program comparison system that compares submissions and highlights programs that are too similar in order to detect cheating. It is expected that the class textbook will be used as a reference, but if any other reference materials (including web sites) are used in preparing homework solutions they must be clearly cited. Any incidents of academic dishonesty will be handled strictly, resulting in either a zero on the assignment or an F in the class, depending on the severity of the incident, and incidents will be reported to the appropriate UNCG office. Attendance Policy: Attendance will not be taken in class, and is voluntary; however, all students are responsible for everything done or said in class (this can include changes in assignments, due dates, etc.). The university allows for a limited number of excused absences for religious observances students who plan to take such an absence should notify the instructor at least two weeks in advance so that accommodations can be made (see the late work policy below). It is the student s responsibility to obtain notes from another student if they miss class. In-class Behavior: When you are in class you should be focused on the class, and you should act in a professional and mature manner. During class there should be no eating, drinking, e- cigarettes, cellphone use, non-class related laptop use, or anything else that does not pertain to the class activities. Any distracting items may be confiscated at the discretion of the instructor. ADA Statement: UNCG seeks to comply fully with the Americans with Disabilities Act (ADA). Students requesting accommodations based on a disability must be registered with the Office of Accessibility Resources and Services located in 215 Elliott University Center: (336) 334 5440 (orhttp://oars.uncg.edu). University Closings: If university facilities are closed due to flu outbreak or other emergencies, it does not mean that classes are canceled. In such an event, please check the class web page and Canvas site for information about if and how the class will proceed.

Handout 1: CSC 330 Class Information and Syllabus 5 Necessary Prerequisite Background: To enroll in this class, you must have made a C or better in CSC 130, CSC 230, and CSC 250. Through CSC 130 and CSC 230, you should have a fairly thorough background in basic Java programming (both syntax and design). You should also have seen and used some of the more advanced features of Java, and while you are not expected to be experts in these topics yet, it is your responsibility to review or brush up on these topics as needed. We will use these Java features extensively in the class, and through discussion and practice these concepts should become more and more clear as the class progresses. Some specific advanced topics, with references to material in the CSC 230 book (Data Structures and Abstractions with Java, 4th edition, by Carrano and Henry) and the book for this class, are given below: Topic Carrano (CSC 230) Ref Weiss (CSC 330) Ref Object-Oriented Design Appendix D (pp. 869 886) Sections 4.1-4.6 (pp. 109-149) Composition Java Interlude 7 (pp. 499-500) Inheritance Polymorphism Abstract classes Interfaces Generics Java Interlude 1 (pp. 53 58) Section 4.7 (pp. 150 156) Java Interlude 3 (pp. 235 244) Exceptions Java Interlude 2 (pp. 95 102) Section 2.5 (pp. 47 51) Java Interlude 4 (pp. 293 300) I/O, Scanner, Files Appendix B Section 2.6 (pp. 51 58) You should also be familiar with elementary linear data structures from CSC 230, including arrays, lists (singly and doubly linked), stacks, and queues, as well as recursion and algorithms for searching and sorting. From CSC 230 and 250 you should be good at basic running time analysis using asymptotic notation. Finally, you should know basic discrete mathematics concepts and be able to write simple proofs.