Download presentation
Presentation is loading. Please wait.
Published byDylan Collins Modified over 9 years ago
1
COP 3530: Data Structures, Algorithms, & Applications Instructor: Kristian Linn Damkjer
2
Course Overview Syllabus Review
3
What The Course Is About Applications are developed to solve real- world problems. All programs manipulate data. Programs must represent data in some way. Data structures focuses on data representation and manipulation. Data manipulation requires algorithms. Algorithms are the fundamental elements in application development.
4
Prerequisites Java™ CIS 3020 or CIS 3022 & CIS 3023 You should be proficient and self- sufficient You must be capable of writing programs without the aid of a compiler.
5
Prerequisites Asymptotic Complexity COT 3100 We will use primarily O notation. f(n) = O(g(n)) : Big Oh notation f(n) is bounded above by g(n) You should also be comfortable with Θ and Ω. f(n) = Θ(g(n)) : Big Theta notation f(n) is asymptotically equivalent to g(n) f(n) = Ω(g(n)) : Big Omega notation f(n) is bounded below by g(n)
6
Prerequisites Strong Mathematical Reasoning Any of the various flavors of Calculus 2. At the very least you need to understand: Sequences Series Summations Integration Differentiation Matrices Vectors
7
Web Sites http://www.cise.ufl.edu/~kdamkjer/courses/su05/cop3530/ Announcements Syllabus Handouts Exercise Solutions Assignments TAs and Discussions http://www.cise.ufl.edu/~sahni/cop3530/ Text Source Codes Past Exams Past Exam Solutions
8
Assignments Assignment guidelines Submission procedures Do Assignment 0 by Friday!
9
Source Codes Read download and use instructions. Must have Java 1.2 or higher Hopefully you have 1.4.2 or 1.5.0 (5.0) Review the source code documentation ProgramIndex.html AllNames.html Other HTML files produced by Javadoc
10
Discussion Sections Go to either one TAs will answer your questions on lectures and assignments. TAs will cover exercises from the text. Web site lists topics and exercises for each discussion section.
11
Textbook It’s not rocket science (really) It’s computer science There are three sections to the textbook: Background (Chapters 1-4) Data Structures (Chapters 5-17) Algorithms (Chapters 18-22) What about Applications? We’ll cover applications throughout the entire semester along with general theory and other concepts.
12
Grades Assignments: 25% Five Graded Projects No drops permitted Each worth 5% Exams: 75% Three Exams No drops permitted Each worth 25%
13
Grades Historic Cutoffs A≥ 83% B+≥ 75% B≥ 70% C+≥ 65% C≥ 60% D+≥ 55% D≥ 50%
14
Classic Problem Sorting
15
Classic Problem: Sorting Given a list of comparable elements: a 0, a 1, …,a n−1 Rearrange the list into a specific order Typically increasing or decreasing order.
16
Classic Problem: Sorting Given a list of comparable elements: a 0, a 1, …,a n−1 Rearrange the list into a specific order Typically increasing or decreasing order. Objective: a 0 ≤ a 1 ≤ … ≤ a n−1 Examples: 8, 6, 9, 4, 3 3, 4, 6, 8, 9 8, 3, 6, 2, 8, 10, 2 2, 2, 3, 6, 8, 8, 10
17
Sorting Methods Insertion Bubble Selection Count Shaker Shell Heap Merge Quick
18
Sorting Methods Insertion Bubble Selection Count Shaker Shell Heap Merge Quick
19
Inserting an Element Given a sorted list (sequence), insert a new element Given 3, 6, 9, 14 Insert 5 Result 3, 5, 6, 9, 14
20
Inserting an Element Insert 5 into the list: 3, 6, 9, 14 Compare new element ( 5 ) and last element in list ( 14 ) Shift 14 right to get 3, 6, 9,, 14 Shift 9 right to get 3, 6,, 9, 14 Shift 6 right to get 3,, 6, 9, 14 Insert 5 to get 3, 5, 6, 9, 14
21
Inserting an Element // insert t into a[0:i-1] int j; for (j = i – 1; j >= 0 && t = 0 && t < a[j]; j--) a[j + 1] = a[j]; a[j + 1] = a[j]; a[j + 1] = t;
22
Next Time in COP 3530… Read Chapters 1–4 for review of topics covered today Performance Analysis and Measurement We will start the Data Structures portion of this course Start thinking about different ways to represent data Read Chapter 5.1–5.2 Data Structure: Linear Lists
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.