|Back to CS Home Page|
Computer Science Course Information
|Course No.||CIS 505||Sections||101|
|Title||Programming, Data Structures & Algorithms|
|Prerequisite(s)||Knowledge of at least one procedure-oriented language such as C or C.++|
|Instructor|| Kurban Niroomand
|Instructor Office Hours|
|Description||Computer science students can not use this course for graduate degree credit. Intensive introduction to computer science principles: a procedure-oriented language such as C++; program design techniques; introductory data structures (linked lists, stacks, sets, trees, graphs); and algorithms (sorting, searching, etc.) and their analysis. Programming assignments are included.
Objective: To learn a procedure-oriented language such as C++; program design techniques; data structures (linked lists, stacks, sets, trees, graphs); and algorithms (sorting, searching, etc.) and their analysis. Programming assignments are included.
|Topics||Introduction & Review of chapter one
Review of C++ & chapter two
C++ classes, stack class in C++, 3.1, 3.2
Designing an ADT, Object – Oriented programming – Class hierarchies
Problem Solving with recursion.
Linked list and linked list operations
Chapter 5 (5.1, 5.2), Chapter 6 (6.3) & Chapter 7
Trees and Tables (Ch10, Pages 438– 502)
Efficiency, Simple Sorts; Selection Sort, Bubble Sort, Insertion Sort
Complex Sorts; Quicksort, Mergesort, Radix Sort.
Heaps, Priority Queues and Heap Sort
Graphs, Dijkstra Algorithm and Hashing and 2-3-4 Trees, Red-Black Trees
General Trees and AVL Trees, Indexing
|Text Book(s)||Data Abstraction and Problem Solving with C++, Walls and Mirrors Second Edition, Addison Wesely, 2002. Carrano, Frank M.,ISBN 9780321247254
|Time & Place||Saturdays 9:15 AM - 1:40 PM Kupf 208/ info 2302|
|Other Info||Grading Criteria:
Programming Projects 20%
Final 30 %
Homeworks & Class involvement 15%
F: 59 or below
There will be late penalties for late submissions of programming assignments. Details will be announced in the assignments
Academic Honor Code
The NJIT academic honor code
(http://www.njit.edu/academics/honorcode.php)applies in full to this
class. Note in particular that copying programs, in full or in part, is
forbidden. You may discuss ideas and concepts with your fellow
students, but you may NOT copy any code.