Lecture1-1 - layers of abstraction to create complexity •...

Info iconThis preview shows pages 1–8. Sign up to view the full content.

View Full Document Right Arrow Icon
1 Data Structures   CSCI 132, Spring 2012 Lecture 1 Big Ideas in Data Structures Course website: http://mathcs.holycross.edu/~csci132
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
2 Crafting a Program Four main ideas used in creating complex computer programs: Data Abstraction Modularity Algorithmic complexity Standard Tools
Background image of page 2
3 Recall Problem Solving One of the most important problem solving techniques is: Divide Conquer & Glue
Background image of page 3

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
4 Dealing with Abstraction Abstraction Allows you to capture common patterns in things and ignore inessential details. Black Box Abstraction Allows us to use things without knowing how they work. For example, a telephone. Data Hiding Allows use of a program component without knowing the specifics of how it is implemented.
Background image of page 4
5 Layers of Abstraction We can build up
Background image of page 5

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Background image of page 6
Background image of page 7

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Background image of page 8
This is the end of the preview. Sign up to access the rest of the document.

Unformatted text preview: layers of abstraction to create complexity . • Without layers of abstraction we could not understand the most complex programs • (e.g. Microsoft Word ~ 1,000,000 lines of code). 6 Modularity • The best programs are modular. • The pieces can fit together and be used in many different ways. • Lego building blocks are a classic example of modularity. 7 Algorithmic Complexity Not all computer programs are equal. The efficiency of programs can be measured as: 1. The amount of time the program takes to run. 2. The amount of memory space used. 8 Standard Programming Tools Data Structures Stacks Queues Lists Tables Trees Graphs Algorithms Searching Sorting Tree Traversal Graph Algorithms...
View Full Document

This document was uploaded on 03/09/2012.

Page1 / 8

Lecture1-1 - layers of abstraction to create complexity •...

This preview shows document pages 1 - 8. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online