Lecture 6 Problem Solving: Algorithm Design & Analysis.

Slides:



Advertisements
Similar presentations
College of Information Technology & Design
Advertisements

1 ICS102: Introduction To Computing King Fahd University of Petroleum & Minerals College of Computer Science & Engineering Information & Computer Science.
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Algorithmic Thinking What’s the Plan? lawrence snyder c h a p t e r 10.
Slides modified by Erin Chambers Problem Solving and Algorithm Design.
“The study of algorithms is the cornerstone of computer science.” Algorithms Winter 2012.
6-1 Chapter Goals Determine whether a problem is suitable for a computer solution Describe the computer problem-solving process and relate it to Polya’s.
Problem Solving and Algorithm Design
Chapter 6 Problem Solving and Algorithm Design. 6-2 Chapter Goals Determine whether a problem is suitable for a computer solution Describe the computer.
Learning Objectives Explain similarities and differences among algorithms, programs, and heuristic solutions List the five essential properties of an algorithm.
Chapter 10 What's The Plan?: Algorithmic Thinking.
Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Introduction to Computers CS Dr. Zhizhang Shen Chapter 10: How to.
© Janice Regan Problem-Solving Process 1. State the Problem (Problem Specification) 2. Analyze the problem: outline solution requirements and design.
CSE115/ENGR160 Discrete Mathematics 02/24/11 Ming-Hsuan Yang UC Merced 1.
Lecture 14 Go over midterm results Algorithms Efficiency More on prime numbers.
Algorithms and Problem Solving. Learn about problem solving skills Explore the algorithmic approach for problem solving Learn about algorithm development.
Early Term Test Some Study Reminders. General Topics Sources for information to be tested are –My slides and classroom presentations of slides –Chapter.
Parallel Merging Advanced Algorithms & Data Structures Lecture Theme 15 Prof. Dr. Th. Ottmann Summer Semester 2006.
Chapter 2 The Algorithmic Foundations of Computer Science
Chapter 6 Problem Solving and Algorithm Design Nell Dale John Lewis.
School of Computing Science CMT1000 © Ed Currie Middlesex University 1 CMT1000: Introduction to Programming Ed Currie Lecture 1B: Problem Solving.
6-1 Problem Solving Problem solving is the act of finding a solution to a perplexing, distressing, vexing, or unsettled question.
The Design and Analysis of Algorithms
The Fundamentals: Algorithms, the Integers & Matrices.
Order of Operations Problems. Use Parenthesis in different ways! By inserting zero, one or two pairs of parenthesis, list all the numbers you can make.
Sort an array - the selection sort algorithm. Selection Sort Selection sort a classic computer algorithm that is used to sort an array The selection sort.
Problem Solving and Algorithms
ITEC 2620A Introduction to Data Structures
Invitation to Computer Science, Java Version, Second Edition.
Problem Solving and Algorithm Design. 2 Problem Solving Problem solving The act of finding a solution to a perplexing, distressing, vexing, or unsettled.
Chapters 7, 8, & 9 Quiz 3 Review 1. 2 Algorithms Algorithm A set of unambiguous instructions for solving a problem or subproblem in a finite amount of.
Instructor Information: Dr. Radwa El Shawi Room: Week # 1: Overview & Review.
Some quotes…. I really hate this damned machine I wish that they would sell it. It never does quite what I want But only what I tell it. ~Anon These machines.
DATA STRUCTURES (CS212D) Week # 1: Overview & Review.
CS 1308 Computer Literacy and The Internet Software.
Introduction to Algorithms By Mr. Venkatadri. M. Two Phases of Programming A typical programming task can be divided into two phases: Problem solving.
Lecture 11: 10/1/2002CS149D Fall CS149D Elements of Computer Science Ayman Abdel-Hamid Department of Computer Science Old Dominion University Lecture.
Chapter Algorithms 3.2 The Growth of Functions 3.3 Complexity of Algorithms 3.4 The Integers and Division 3.5 Primes and Greatest Common Divisors.
Lecture 13: 10/10/2002CS149D Fall CS149D Elements of Computer Science Ayman Abdel-Hamid Department of Computer Science Old Dominion University Lecture.
Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Fluency with Information Technology Third Edition by Lawrence Snyder Chapter.
Lecture 11 Data Structures, Algorithms & Complexity Introduction Dr Kevin Casey BSc, MSc, PhD GRIFFITH COLLEGE DUBLIN.
What's The Plan? Algorithmic Thinking Step-by-step directions for whatever someone, or the computer, needs to do © 2004 Lawrence Snyder.
Data Structures and Algorithms Dr. Tehseen Zia Assistant Professor Dept. Computer Science and IT University of Sargodha Lecture 1.
CS139 – Algorithm Development Aug 23, 2004 WELCOME!
INTRODUCTION Data Structures. Why study data structures and algorithms? zPrograms solve problems zPrograms process information zInformation needs to be.
Flowchart. a diagram of the sequence of movements or actions of people or things involved in a complex system or activity. a graphical representation.
Flowcharts C++ Lab. Algorithm An informal definition of an algorithm is: a step-by-step method for solving a problem or doing a task. Input data A step-by-step.
Problem Solving.  Similar to Solving Math Word Problem  Read the Problem  Decide how to go about Solving the Problem  Solve the Problem  Test the.
Algorithms and Problem Solving. Learn about problem solving skills Explore the algorithmic approach for problem solving Learn about algorithm development.
Algorithms Sept 4, Tuesday’s Lab You developed an algorithm Input – an 8 ½ x 11 inch piece of paper Audience – Fellow classmates Process – Instructions.
Advanced Data Structures Lecture 1
The Design and Analysis of Algorithms
Pseudocode Upsorn Praphamontripong CS 1110 Introduction to Programming
3.1 Algorithms (and real programming examples).
Courtsey & Copyright: DESIGN AND ANALYSIS OF ALGORITHMS Courtsey & Copyright:
COMS W1004 Introduction to Computer Science and Programming in Java
Problem Solving and Algorithm Design
Week # 1: Overview & Review
Programming We have seen various examples of programming languages
ITEC 2620M Introduction to Data Structures
Chapter 10: Algorithm TECH Prof. Jeff Cheng.
Algorithms and Problem Solving
What's The Plan?: Algorithmic Thinking
Algorithm: Word comes from Arabic Author Abū ‘Abdallāh Muḥammad ibn Mūsā al-Khwārizmī Algorism Algebra: Kitab al-Mukhtasar fi Hisab al-Jabr wal-Muqabala.
Computational Thinking
What's The Plan?: Algorithmic Thinking
What's The Plan?: Algorithmic Thinking
Unit 2: Computational Thinking, Algorithms & Programming
Quiz: Computational Thinking
Early Midterm Some Study Reminders.
Presentation transcript:

Lecture 6 Problem Solving: Algorithm Design & Analysis

Solving problems with a computer requires a detailed knowledge of a programming language or extensive experience with specific computer applications designed for a particular discipline. Think of the types of programs available to professionals in all types of careers. ArchitectureJournalismStockbroker BankingKinesiologyTeacher ChemistryLibrary ScienceUrban Planner DecoratingMusicianVeterinarian EditingNetwork AdministrationWeather Forecaster FirefightingOptometryX-Ray Technician GeneticsPhotographyYoga Instructor HealthcareQuality AssuranceZoologist InsuranceRadio Announcer How are Computers used to Solve Problems?

What is an Algorithm? A set of unambiguous instructions for solving a problem or subproblem in a finite amount of time using a finite amount of data Abstract Step An algorithmic step containing unspecified details Concrete Step An algorithm step in which all details are specified

You Know Many Algorithms Search an unordered list of n items to find a particular item x. Search an ordered list of n items to find a particular item x. Find the smallest value in an unordered list of n items. Find the largest value in an ordered list of n items. Determine if an unordered list contains a repeated value. Find a pair of items x and y in an unordered list that are the most similar. Find a pair of items x and y in an ordered list that are the most similar. Find a pair of items in an ordered list that are the least similar. Let's see how good you are at understanding how some important algorithms work. For each of the following tasks, decide how many steps are needed to perform the task on a set of N items (e.g. numbers)