0% found this document useful (0 votes)
21 views

Course Info

This document outlines the syllabus for a computer science course. It provides information on the instructor, teaching assistant, course objectives, content, schedule, assignments, exams, textbook, and grading scheme.

Uploaded by

Beddad Bcf Udl
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
21 views

Course Info

This document outlines the syllabus for a computer science course. It provides information on the instructor, teaching assistant, course objectives, content, schedule, assignments, exams, textbook, and grading scheme.

Uploaded by

Beddad Bcf Udl
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
You are on page 1/ 4

COP 3502H

Computer Science I

Spring 2007

http://www.cs.ucf.edu/courses/cop3502h/spr2007/

Instructor: Joseph J. LaViola

Office: Engineering III Room 321


Hours: Tues. 2:30pm-4:00pm
email:
jjl@cs.ucf.edu

If you want to email me, MAKE SURE to enter in the subject line “cop 3502h” followed
by your name.

Teaching Assistant: Sean Szumlanski


Engineering III Room 301
Hours: Wed., Thurs. 2:00pm-3:00pm

General guidelines

This course lays the foundations of computer science. It goes beyond “coding in C”. It
will cover different ways to structure the data, and will show how each structure is useful
in solving different problems. For each solution, we shall also examine efficiency.
This course involves extensive programming, which means besides attending the lecture
classes you are required to spend substantial hours in the computer center labs working
on your assignments. You may fail this course if you do not submit all the assignments.
If you cannot afford to spend time on assignments, it would be in your interest to
withdraw from the course.

Every student will be given an account on the Olympus. The TAs grading your programs
would try to execute your code on Olympus using gcc, or they can try compiling using
jgrasp. If your programs cannot run on Olympus or jgrasp, there is no way that the
TAs would be able to award you any points for your work.

Course Objectives

 Provide an introduction to the field of computing: The central concept that


underlies computer science is the design and implementations of algorithms to
solve specific problems.
 Provide Conceptual Content and Software Skills: The lecture component
focuses on conceptual tools for constructing and analyzing algorithms – Time
Complexity and recursion, while the lab component focuses on
implementation issues involved in C programming.

 Introduce elementary data structures: Arranging data in arrays, linked lists,


stacks, queues, binary trees and hash tables.

 Introduce searching and sorting techniques.


.
Course Content

We will cover the following concepts in this course.

1. Brief review of Structures, strings, file handling, dynamic memory allocation


2. Design of Algorithms for problem solving
3. Algorithmic Complexity - Big -O notation, summations
4. Searching - linear and binary search
5. Recursion - tracing, developing recursive functions, algorithmic complexity using
recurrence relation
6. Stacks and Queues - converting infix expression to postfix form, evaluation of
postfix forms, waiting line simulation, implementation using arrays
7. Linked Lists - Creation, deletion, insertion in sorted linked list, reversing,
implementing stack and queue, circularly linked lists
8. Binary Trees - tree traversals, tree algorithms, Binary Search Trees, insertion and
deletion, Balanced BST (AVL trees)
9. Heap trees - creation, insertion, heapify, deletion
10. Hash Table - collision resolving using linear probing, quadratic probing, dynamic
hashing, double chaining
11. Sorting - Selection sort, Insertion sort, Bubble sort, Merge sort, Quick sort, heap
sort
12. Basic software engineering principles and an introduction to object oriented
design.
Lecture Schedule

The sequence of and time spent on the lecture topics given is tentative and may be altered
as the course proceeds.

1. Brief review of C: structures, strings, file handling, dynamic memory allocation


2. Linked lists
3. Stacks and Queues - implementation using arrays, linked lists, circular lists.
4. Recursion
5. Trees - Binary trees and heap trees, BST, AVL trees
6. Algorithm Analysis
7. Hash Tables
8. Sorting
9. Software engineering and object oriented design

Reference Book

We will use the following textbook:

Data structures, algorithms & software principles in C


By: Thomas B. Standish
Addison - Wesley

Assignments:

 All the programming assignments are required to be implemented in ‘C’. You will
get an OLYMPUS account, and you can either use the computer labs at UCF, or
dial up from home to run your programs on OLYMPUS. Your programs must
compile under gcc or cygwin.

 All assignments must be submitted through WebCT by 11:59 PM on the


indicated due date. You will be allowed 3 late days throughout the course of the
semester. Once you have used your late days, assignments submitted after the due
date will lose a letter grade for each day late.

 Assignments must be carried out individually. Collaboration on any assignment is


NOT acceptable. Cheating may result in a failing grade regardless of
performance.
Exams:

There will be one mid term and one final exam.

Midterm: March 7th


Final: April 30th

All tests will be closed book and notes .Calculators and cell phones are not allowed in
any exam/quiz tests.

Do NOT miss any test/exam. There are no make-up tests. If you miss a test for
SERIOUS reasons you have to provide official written evidence. If evidence is accepted a
form of grade recovery will be discussed with the instructor.
Cheating may result in a failing grade regardless of performance.

Tentative Grading Scheme:

Homework 10%
Mid term exam 20%
Final exam 20%
Programming Assignments 50%

The instructor reserves the right to use plus/minus grading in this course.

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy