Computer Science II - Data Structures. 4 3 Lecture Hours/Week and 2 Lab Hours/Week. Hours: lecture/laboratory/other (specify)

Similar documents
Krishna Institute of Engineering & Technology, Ghaziabad Department of Computer Application MCA-213 : DATA STRUCTURES USING C

Data Structure [Question Bank]

DATA STRUCTURES USING C

BCS2B02: OOP Concepts and Data Structures Using C++

5. A full binary tree with n leaves contains [A] n nodes. [B] log n 2 nodes. [C] 2n 1 nodes. [D] n 2 nodes.

Assessment for Master s Degree Program Fall Spring 2011 Computer Science Dept. Texas A&M University - Commerce

Introduction to Programming System Design. CSCI 455x (4 Units)

Sample Questions Csci 1112 A. Bellaachia

University of Dayton Department of Computer Science Undergraduate Programs Assessment Plan DRAFT September 14, 2011

GUJARAT TECHNOLOGICAL UNIVERSITY, AHMEDABAD, GUJARAT. Course Curriculum. DATA STRUCTURES (Code: )

Abstract Data Type. EECS 281: Data Structures and Algorithms. The Foundation: Data Structures and Abstract Data Types

KITES TECHNOLOGY COURSE MODULE (C, C++, DS)

Assessment Plan for CS and CIS Degree Programs Computer Science Dept. Texas A&M University - Commerce

Bachelor of Games and Virtual Worlds (Programming) Subject and Course Summaries

Computer Science. General Education Students must complete the requirements shown in the General Education Requirements section of this catalog.

PES Institute of Technology-BSC QUESTION BANK

Quiz 4 Solutions EECS 211: FUNDAMENTALS OF COMPUTER PROGRAMMING II. 1 Q u i z 4 S o l u t i o n s

10CS35: Data Structures Using C

1) The postfix expression for the infix expression A+B*(C+D)/F+D*E is ABCD+*F/DE*++

Questions 1 through 25 are worth 2 points each. Choose one best answer for each.

Binary Search Trees CMPSC 122

1. The memory address of the first element of an array is called A. floor address B. foundation addressc. first address D.

Computer Science. 232 Computer Science. Degrees and Certificates Awarded. A.S. Degree Requirements. Program Student Outcomes. Department Offices

02-201: Programming for Scientists

Bangalore University B.Sc Computer Science Syllabus ( Semester System)

Please consult the Department of Engineering about the Computer Engineering Emphasis.

COMPUTER SCIENCE, BACHELOR OF SCIENCE (B.S.)

Online Course Syllabus CS320: C Programming

CompSci-61B, Data Structures Final Exam

Java Software Structures

Linked Lists, Stacks, Queues, Deques. It s time for a chainge!

Information Systems. Administered by the Department of Mathematical and Computing Sciences within the College of Arts and Sciences.

CSE 326, Data Structures. Sample Final Exam. Problem Max Points Score 1 14 (2x7) 2 18 (3x6) Total 92.

Lecture 11 Doubly Linked Lists & Array of Linked Lists. Doubly Linked Lists

Eastern Washington University Department of Computer Science. Questionnaire for Prospective Masters in Computer Science Students

Course Descriptions. CS 101 Intro to Computer Science

Data Structures. Level 6 C Module Descriptor

The Elective Part of the NSS ICT Curriculum D. Software Development

Data Structures. Chapter 8

GET 114 Computer Programming Course Outline. Contact: Office Hours: TBD (or by appointment)

Eastern Washington University Department of Computer Science. Questionnaire for Prospective Masters in Computer Science Students

AP Computer Science AB Syllabus 1

RARITAN VALLEY COMMUNITY COLLEGE COURSE OUTLINE. CISY 103 Computer Concepts and Programming

University of Pune Revised Structure for the B. Sc. (Computer Science) Course (Second Year to be implemented from Academic Year )

Lecture 2: Data Structures Steven Skiena. skiena

Data Structures and Algorithms Written Examination

COURSE TITLE COURSE DESCRIPTION

INTERNATIONAL JOURNAL OF PURE AND APPLIED RESEARCH IN ENGINEERING AND TECHNOLOGY

LeMoyne-Owen College Division of Natural and Mathematical Sciences COMPUTER ALGORITHMS, COSI 335 Fall Syllabus

Introduction to Data Structures and Algorithms

Using Web-based Tools to Enhance Student Learning and Practice in Data Structures Course

DIABLO VALLEY COLLEGE CATALOG

Computer and Information Sciences

WORKSPACE WEB DEVELOPMENT & OUTSOURCING TRAINING CENTER

Computer Science. Computer Science 213. Faculty and Offices. Degrees and Certificates Awarded. AS Computer Science Degree Requirements

Sample Syllabus (C++) CSCI 1301 Introduction to Programming Principles

CSE373: Data Structures and Algorithms Lecture 1: Introduction; ADTs; Stacks/Queues. Linda Shapiro Spring 2016

Lecture 9. Semantic Analysis Scoping and Symbol Table

Ordered Lists and Binary Trees

DIVISION OF INFORMATION TECHNOLOGY PROGRAMS AND SYSTEMS SUPPORT FALL 2015 / Spring 2016

Computer Science 210: Data Structures. Introduction

Fundamentals of Computer Programming CS 101 (3 Units)

Data Structure and Algorithm I Midterm Examination 120 points Time: 9:10am-12:10pm (180 minutes), Friday, November 12, 2010

Computer Science Course Descriptions Page 1

Division of Mathematical Sciences

Eastern Washington University Department of Computer Science. Questionnaire for Prospective Masters in Computer Science Students

Analysis of a Search Algorithm

COURSE DESCRIPTION FOR THE COMPUTER INFORMATION SYSTEMS CURRICULUM

COURSE OUTLINE. Prerequisites: Course Description:

ADVANCED SCHOOL OF SYSTEMS AND DATA STUDIES (ASSDAS) PROGRAM: CTech in Computer Science

Computer Science. Computer Science 207. Degrees and Certificates Awarded. A.S. Computer Science Degree Requirements. Program Student Outcomes

Data Structures and Algorithms

Canisius College Computer Science Department Computer Programming for Science CSC107 & CSC107L Fall 2014

Course Descriptions. preparation.

SYLLABUS FOR CS340: INTRODUCTION TO DATABASES

How To Teach C++ Data Structure Programming

International Journal of Software and Web Sciences (IJSWS)

Data Structures in Java. Session 15 Instructor: Bert Huang

CS 300 Data Structures Syllabus - Fall 2014

ROCHESTER INSTITUTE OF TECHNOLOGY COURSE OUTLINE FORM COLLEGE OF SCIENCE. School of Mathematical Sciences

Binary Heap Algorithms

DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING LESSON PLAN

2. Advance Certificate Course in Information Technology

A TOOL FOR DATA STRUCTURE VISUALIZATION AND USER-DEFINED ALGORITHM ANIMATION

2. (a) Explain the strassen s matrix multiplication. (b) Write deletion algorithm, of Binary search tree. [8+8]

Department of Computer Science

Unit Write iterative and recursive C functions to find the greatest common divisor of two integers. [6]

FLORIDA STATE COLLEGE AT JACKSONVILLE COLLEGE CREDIT COURSE OUTLINE. Introduction to Programming with Visual Basic.NET

CS 261 C and Assembly Language Programming. Course Syllabus

COMPUTER SCIENCE (5651) Test at a Glance

An Introduction to Programming and Computer Science

ALLIED PAPER : DISCRETE MATHEMATICS (for B.Sc. Computer Technology & B.Sc. Multimedia and Web Technology)

Lecture 12 Doubly Linked Lists (with Recursion)

NEW YORK CITY COLLEGE OF TECHNOLOGY/CUNY Computer Systems Technology Department

Chapter 8: Bags and Sets

Transcription:

COURSE OUTLINE COS210 Course Number Computer Science II - Data Structures Course Title 4 3 Lecture Hours/Week and 2 Lab Hours/Week Credits Hours: lecture/laboratory/other (specify) Catalog Description: A study of advanced programming topics focused on logical structures of data, their physical representation, design and analysis of algorithms operating on the structures, and techniques for program development and debugging. Emphasis is placed on the appropriate use and choice of standard data structures. Latest Review: Fall, 2015 Prerequisites: COS102 or permission of department Corequisites: None Required texts/other materials: Data Structures: Abstraction and Design Using Java, Elliot Koffman, Wiley, (latest Edition), ISBN: 9780470128701 Information resources: Instructors website: www.mccc.edu/~reichman/cs210scd.htm Course Coordinator: Donald O. Reichman

LIBERAL ARTS DIVISION COS210 Page 2 Course Objectives. 1. Familiarize the student with good programming design methods, particularly Top- Down design. 2. Develop algorithms for manipulating stacks, queues, linked lists, trees, graphs. 3. Develop the data structures for implementing the above algorithms. 4. Develop recursive algorithms as they apply to trees and graphs. 5. Familiarize the student with the issues of Time complexity and examine various algorithms from this perspective. Course-specific General Education goals and objectives. Critical thinking, problem solving and information literacy: Students will use critical thinking and problem solving skills in analyzing information gathered through different media and from a variety of sources. Students will identify a problem and analyze it in terms of its significant parts and the information needed to solve it. Students will use computers to access, analyze or present information, solve problems, and communicate with others. Students will formulate and evaluate possible solutions to problems, and select and defend the chosen solutions. Students will recognize weaknesses in arguments, such as the use of false or disputable premises, suppression of contrary evidence, faulty reasoning, and emotional loading. EVALUATION To ensure academic freedom for the individual faculty member the following is only suggested: 5 programming projects including a top-down design for each for each 25% 1 midterm 15% 1 final 15% 45% 3 in-class exams

LIBERAL ARTS DIVISION COS210 Page 3 Week 1 - Chapter 1 At the conclusion of week 1 the student should be able to discuss the following: 1. What is computer science? 2. The elements of good programming style and good project design. 3. Top-Down project design. Week 2 - At the conclusion of week 2 the student should be able to describe the following in 1. The algorithms for manipulating singly, doubly, and circular Linked Lists. 2. The Implementation of Linked Lists using an array and pointer variables. Students will begin coding first project. Week 3 - Chapter 3 At the conclusion of week 3 the student should be able to describe the following in 1. The algorithms for manipulating strings and character manipulation will be discussed. 2. The implementation of these algorithms with Linked Lists. Students will begin designing their second project. Week 4 - Chapter 4 At the conclusion of week 4 the student should be able to describe the following in 1. The algorithms for manipulating stacks and queues. 2. The Implementation of the above using an array and Linked Lists.

LIBERAL ARTS DIVISION COS210 Page 4 Week 5 - Chapter 5 At the conclusion of week 5 the student should be able to : 1. Apply stacks to parsing and recursion problems. Begin to design and code third project Week 6 - Chapter 5 At the conclusion of week 6 the student should be able to : 1. Discuss recursion by examining several examples. 2. Unfold the recursive program by coding it non recursively. 3. Discuss the computer s use of stacks to support recursion. 4. Create the stack frames for a recursive program Continue coding project #3. Week 7 - Mid Term Exam Week 8 - Chapter 6 At the conclusion of week 8 the student should be able to describe the following in 1. tree definitions. 2. Algorithms for tree traversals, insertions, deletions. 3. The Implementation of trees using pointer variables and arrays. Continue coding project #3.

LIBERAL ARTS DIVISION COS210 Page 5 Week 9 - Chapter 7 At the conclusion of week 9 the student should be able to describe the following in 1. Algorithms for creating complete Binary trees and almost complete Binary trees. 2. Algorithms for Binary Search trees. 3. The Implementation of the above. Begin to design and code fourth project Week 10 - Chapter Appendix B At the conclusion of week 10 the student should be able to: 1. Describe Time-complexity issues - definitions of Big-OH, Big Omega, Running-time. 2. Analyze several previously defined algorithms to determine their running time and the order of their running time. Week 11 - Chapters 8, 9 At the conclusion of week 11 the student should be able to: 1. Discuss Sparse matrices and generalized dope vectors. 2. Implement the above with Linked Lists. 3. Understand graph terminology. Week 12 - Chapter 9 At the conclusion of week 12 the student should be able to: 1. Implement graphs as adjacency matrix, adjacency list. 2. Implement Searching technique - Breadth First Search and Depth First Search 3. Describe various Graph algorithms

LIBERAL ARTS DIVISION COS210 Page 6 Week 13 - Chapter 10 At the conclusion of week 13 the student should be able to: 1. Understand Algorithms for simple sorts and for best sorts. Week 14 - Chapter 11, 12 At the conclusion of week 14 the student should be able to: 1. Discuss algorithms for searching-hashing algorithm, binary and linear search. 2. Describe Data Management issues - secondary key searches, types of DBMS. Complete work on final project. Week 15 - Review for final exam. NOTE: Hand in Final Project Each project should consist of the following: 1. program listing - including liberal use of comments and contiguously, a run of the project. 2. project design - the top-down structure of the project with brief pseudo code describing the logic used in the program. 3. all the above submitted in a folder.