The Sequential Search (Linear Search) Mr. Dave Clausen La Cañada High School

Save this PDF as:

Size: px
Start display at page:

Transcription

1 The Sequential Search (Linear Search) Mr. Dave Clausen La Cañada High School

2 The Sequential Search Description The Sequential (or Linear) Search examines the first element in the list and then examines each sequential element in the list (in the order that they appear) until a match is found. This match could be a desired word that you are searching for, or the minimum number in the list. 9/24/2011 Mr. Dave Clausen 2

3 The Sequential Search Variations Variations on this include: searching a sorted list for the first occurrence of a data value, searching a sorted list for all occurrences of a data value (or counting how many matches occur: inventory), or searching an unsorted list for the first occurrence or every occurrence of a data value. You may indicate that a match has been found, the number of matches that have been found, or the indices where all the matches have been found. 9/24/2011 Mr. Dave Clausen 3

4 Sequential Search Algorithm Set index to 0 while index < length if list[index] is equal to target then return index else Increment the index by 1 return -1 9/24/2011 Mr. Dave Clausen 4

5 Sequential Search Java int Sequential_Search(int target, int[] list, int length) { int index = 0; while (index < length) if (list[index] = = target) return index; else index++; return -1; } 9/24/2011 Mr. Dave Clausen 5

6 Sequential Search Java: for loop int Linear_Search (int[ ] list, int searchvalue, int length) { for (int index = 0; index < length; index ++) if (list[index ] == searchvalue) return index ; return -1; } 9/24/2011 Mr. Dave Clausen 6

7 Sequential Search C + + int search(int target, const apvector<int> &v) { int index = 0; while (index < v.length()) if (v[index] = = target) return index; else ++index; return -1; } 9/24/2011 Mr. Dave Clausen 7

8 A More Efficient Sequential Search Algorithm Set index to 0 (zero) Set found to false While index < length and not found do If list[index] is equal to target then set found to be true Else Increment the index by 1 (one) If found then return index Else Return -11 (negative one) 9/24/2011 Mr. Dave Clausen 8

9 int Sequential_Search(int target, int[] list, int length) { } A Sequential Search Java int index = 0; boolean found = false; while((index < length) &&! found) if (list[index] = = target) found = true; else index++; if (found) return index; else return -1 9/24/2011 Mr. Dave Clausen 9

10 int Sequential_Search(int target, apvector <int> &list, int length) { } A Sequential Search C + + int index = 0; bool found = false; while((index < length) &&! found) if (list[index] = = target) found = true; else ++index; if (found) return index; else return -1 9/24/2011 Mr. Dave Clausen 10

11 The Sequential Search Java Variation #1 If the list is sorted, we can improve this code by adding the following extended if statement: if (list[index] = = target) found = true; else if (list[index] > target) index = length; else index++; //target is not in list 9/24/2011 Mr. Dave Clausen 11

12 The Sequential Search C + + Variation #1 If the list is sorted, we can improve this code by adding the following extended if statement: if (list[index] = = target) found = true; else if (list[index] > target) index = length; else index++; //target is not in list 9/24/2011 Mr. Dave Clausen 12

13 The Sequential Search Java Variation #2 Whether the list is sorted or not, we can return the number of occurrences of the target in the list: int Occurrences_Of (int target, int [ ] list, int length) { } int count = 0; for(int index = 0; index < length; index++) if (list[index] = = target) count++; return count; 9/24/2011 Mr. Dave Clausen 13

14 The Sequential Search C + + Variation #2 Whether the list is sorted or not, we can return the number of occurrences of the target in the list: int Occurrences_Of (int target, const apvector <int> &list) { } int count = 0; for(int index = 0; index < list.length(); ++index) if (list[index] = = target) + + count; return count; 9/24/2011 Mr. Dave Clausen 14

15 The Sequential Search Java Variation #3 Whether the list is sorted or not, we can return the indices of occurrences of the target in the list: void Indices_Of (int target, int [ ] list, int length) { for(int index = 0; index < length; index++) if (list[index] = = target) System.out.println println( + target + located at index # + index); } 9/24/2011 Mr. Dave Clausen 15

16 The Sequential Search C + + Variation #3 Whether the list is sorted or not, we can return the indices of occurrences of the target in the list: void Indices_Of (int target, const apvector<int> &list) { for(int index = 0; index < list.length(); length(); ++index) if (list[index] = = target) cout<< target << located at index # <<index<<endl; } 9/24/2011 Mr. Dave Clausen 16

17 A Sequential Search Example Target? We start by searching for the target at the first element in the List and then proceed to examine each element in the order in which they appear /24/2011 Mr. Dave Clausen 17

18 A Sequential Search Example Target? /24/2011 Mr. Dave Clausen 18

19 A Sequential Search Example Target? /24/2011 Mr. Dave Clausen 19

20 A Sequential Search Example Target? /24/2011 Mr. Dave Clausen 20

21 A Sequential Search Example Once the target data item has been found, you may return a Boolean true, or the index where it was found. Target! /24/2011 Mr. Dave Clausen 21

22 Big - O Notation Big - O notation is used to describe the efficiency of a search or sort. The actual time necessary to complete the sort varies according to the speed of your system. Big - O notation is an approximate mathematical formula to determine how many operations are necessary to perform the search or sort. The Big - O notation for the Sequential Search is O(n), because it takes approximately n passes to find the target element. 9/24/2011 Mr. Dave Clausen 22

AP Computer Science Java Mr. Clausen Program 9A, 9B

AP Computer Science Java Mr. Clausen Program 9A, 9B PROGRAM 9A I m_sort_of_searching (20 points now, 60 points when all parts are finished) The purpose of this project is to set up a program that will

Zabin Visram Room CS115 CS126 Searching. Binary Search

Zabin Visram Room CS115 CS126 Searching Binary Search Binary Search Sequential search is not efficient for large lists as it searches half the list, on average Another search algorithm Binary search Very

COUNTING LOOPS AND ACCUMULATORS

COUNTING LOOPS AND ACCUMULATORS Two very important looping idioms are counting loops and accumulators. A counting loop uses a variable, called the loop control variable, to keep count of how many cycles

Lecture Notes on Linear Search

Lecture Notes on Linear Search 15-122: Principles of Imperative Computation Frank Pfenning Lecture 5 January 29, 2013 1 Introduction One of the fundamental and recurring problems in computer science is

UIL Computer Science for Dummies by Jake Warren and works from Mr. Fleming

UIL Computer Science for Dummies by Jake Warren and works from Mr. Fleming 1 2 Foreword First of all, this book isn t really for dummies. I wrote it for myself and other kids who are on the team. Everything

J a v a Quiz (Unit 3, Test 0 Practice)

Computer Science S-111a: Intensive Introduction to Computer Science Using Java Handout #11 Your Name Teaching Fellow J a v a Quiz (Unit 3, Test 0 Practice) Multiple-choice questions are worth 2 points

Java How to Program, 9/e

Java How to Program, 9/e Education, Inc. All Rights Reserved. 1 Any computing problem can be solved by executing a series of actions in a specific order. An algorithm is a procedure for solving a problem

Collections and iterators

Objects First With Java A Practical Introduction Using BlueJ Grouping objects Collections and iterators 2.0 Concepts covered so far Abstraction Modularization Classes define types Class and object diagrams

Algorithm & Flowchart. Credit: Mr Ainullotfi

Algorithm & Flowchart Credit: Mr Ainullotfi Common Flowchart Symbols Start/Stop Process Input/Output Refers to a separate flowchart Decision Connector Off-page Connector Comments Preparation (for loops

Translating to Java. Translation. Input. Many Level Translations. read, get, input, ask, request. Requirements Design Algorithm Java Machine Language

Translation Translating to Java Introduction to Computer Programming The job of a programmer is to translate a problem description into a computer language. You need to be able to convert a problem description

Overview. What is software testing? What is unit testing? Why/when to test? What makes a good test? What to test?

Testing CMSC 202 Overview What is software testing? What is unit testing? Why/when to test? What makes a good test? What to test? 2 What is Software Testing? Software testing is any activity aimed at evaluating

Engineering Problem Solving with C++, Etter/Ingber

Engineering Problem Solving with C++, Etter/Ingber Chapter 3 Control Structures 1 Control structures Algorithm Development Conditional Expressions Selection Statements Repetition Statements Structuring

Boolean Expressions, Conditions, Loops, and Enumerations. Precedence Rules (from highest to lowest priority)

Boolean Expressions, Conditions, Loops, and Enumerations Relational Operators == // true if two values are equivalent!= // true if two values are not equivalent < // true if left value is less than the

Sample CSE8A midterm Multiple Choice (circle one)

Sample midterm Multiple Choice (circle one) (2 pts) Evaluate the following Boolean expressions and indicate whether short-circuiting happened during evaluation: Assume variables with the following names

Why? A central concept in Computer Science. Algorithms are ubiquitous.

Analysis of Algorithms: A Brief Introduction Why? A central concept in Computer Science. Algorithms are ubiquitous. Using the Internet (sending email, transferring files, use of search engines, online

JAVA NOTES DATA STRUCTURES AND ALGORITHMS

15 JAVA NOTES DATA STRUCTURES AND ALGORITHMS Terry Marris July 2001 3 LINEAR SEARCH 3.1 LEARNING OUTCOMES By the end of this lesson the student should be able to describe how a linear search algorithm

1. Use the class definition above to circle and identify the parts of code from the list given in parts a j.

public class Foo { private Bar _bar; public Foo() { _bar = new Bar(); public void foobar() { _bar.moveforward(25); 1. Use the class definition above to circle and identify the parts of code from the list

MIDTERM 1 REVIEW WRITING CODE POSSIBLE SOLUTION

MIDTERM 1 REVIEW WRITING CODE POSSIBLE SOLUTION 1. Write a loop that computes (No need to write a complete program) 100 1 99 2 98 3 97... 4 3 98 2 99 1 100 Note: this is not the only solution; double sum

recursion here it is in C++ power function cis15 advanced programming techniques, using c++ fall 2007 lecture # VI.1

topics: recursion searching cis15 advanced programming techniques, using c++ fall 2007 lecture # VI.1 recursion recursion is defining something in terms of itself there are many examples in nature and

Recursion. Slides. Programming in C++ Computer Science Dept Va Tech Aug., 2001. 1995-2001 Barnette ND, McQuain WD

1 Slides 1. Table of Contents 2. Definitions 3. Simple 4. Recursive Execution Trace 5. Attributes 6. Recursive Array Summation 7. Recursive Array Summation Trace 8. Coding Recursively 9. Recursive Design

Searching and Sorting. Searching. Binary Search. Linear Search. k N-1. <= x??? > x. x not in here???

Searching and Sorting It s a fundamental area of CS since the beginning of time. Well understood! ll professional programmers should have a good understanding of it. lso provides good example for discussion

Lecture 2 Notes: Flow of Control

6.096 Introduction to C++ January, 2011 Massachusetts Institute of Technology John Marrero Lecture 2 Notes: Flow of Control 1 Motivation Normally, a program executes statements from first to last. The

Analysis of Binary Search algorithm and Selection Sort algorithm

Analysis of Binary Search algorithm and Selection Sort algorithm In this section we shall take up two representative problems in computer science, work out the algorithms based on the best strategy to

Bachelor of Science or Arts Degree Minor Environmental Science Check List

Mathematics & 6 LA 10101 Freshman Success Mathematics & 6 LA 10101 Freshman Success Mathematics & 6 LA 10101 Freshman Success Mathematics & 6 LA 10101 Freshman Success Mathematics & 6 LA 10101 Freshman

Introduction to Programming (in C++) Loops. Jordi Cortadella, Ricard Gavaldà, Fernando Orejas Dept. of Computer Science, UPC

Introduction to Programming (in C++) Loops Jordi Cortadella, Ricard Gavaldà, Fernando Orejas Dept. of Computer Science, UPC Example Assume the following specification: Input: read a number N > 0 Output:

Example. Introduction to Programming (in C++) Loops. The while statement. Write the numbers 1 N. Assume the following specification:

Example Introduction to Programming (in C++) Loops Assume the following specification: Input: read a number N > 0 Output: write the sequence 1 2 3 N (one number per line) Jordi Cortadella, Ricard Gavaldà,

Today s Outline. Exercise. Binary Search Analysis. Linear Search Analysis. Asymptotic Analysis. Analyzing Code. Announcements. Asymptotic Analysis

Today s Outline Announcements Assignment #1 due Thurs, Oct 7 at 11:45pm Asymptotic Analysis Asymptotic Analysis CSE 7 Data Structures & Algorithms Ruth Anderson Autumn 2010 Exercise Analyzing Code bool

Efficiency of algorithms. Algorithms. Efficiency of algorithms. Binary search and linear search. Best, worst and average case.

Algorithms Efficiency of algorithms Computational resources: time and space Best, worst and average case performance How to compare algorithms: machine-independent measure of efficiency Growth rate Complexity

Data Structures and Algorithms(3)

Ming Zhang Data Structures and Algorithms Data Structures and Algorithms(3) Instructor: Ming Zhang Textbook Authors: Ming Zhang, Tengjiao Wang and Haiyan Zhao Higher Education Press, 2008.6 (the "Eleventh

CSE373: Data Structures and Algorithms Lecture 3: Math Review; Algorithm Analysis. Linda Shapiro Winter 2015

CSE373: Data Structures and Algorithms Lecture 3: Math Review; Algorithm Analysis Linda Shapiro Today Registration should be done. Homework 1 due 11:59 pm next Wednesday, January 14 Review math essential

Chapter 8 Selection 8-1

Chapter 8 Selection 8-1 Selection (Decision) The second control logic structure is selection: Selection Choosing between two or more alternative actions. Selection statements alter the sequential flow

Class : MAC 286. Data Structure. Research Paper on Sorting Algorithms

Name : Jariya Phongsai Class : MAC 286. Data Structure Research Paper on Sorting Algorithms Prof. Lawrence Muller Date : October 26, 2009 Introduction In computer science, a ing algorithm is an efficient

GENERATION OF EPC BASED SIMULATION MODELS. EURO 2012 Vilnius, Lithuania

GENERATION OF EPC BASED SIMULATION MODELS Prof. Dr. Christian Müller Department of Management and Business Computing Technical University of Applied Sciences Wildau Bahnhofstrasse, D-15745 Wildau, Germany

Arrays. Introduction. Chapter 7

CH07 p375-436 1/30/07 1:02 PM Page 375 Chapter 7 Arrays Introduction The sequential nature of files severely limits the number of interesting things you can easily do with them.the algorithms we have examined

CompSci 125 Lecture 08. Chapter 5: Conditional Statements Chapter 4: return Statement

CompSci 125 Lecture 08 Chapter 5: Conditional Statements Chapter 4: return Statement Homework Update HW3 Due 9/20 HW4 Due 9/27 Exam-1 10/2 Programming Assignment Update p1: Traffic Applet due Sept 21 (Submit

6. Standard Algorithms

6. Standard Algorithms The algorithms we will examine perform Searching and Sorting. 6.1 Searching Algorithms Two algorithms will be studied. These are: 6.1.1. inear Search The inear Search The Binary

Chapter 5. Selection 5-1

Chapter 5 Selection 5-1 Selection (Decision) The second control logic structure is selection: Selection Choosing between two or more alternative actions. Selection statements alter the sequential flow

CSC 180 H1F Algorithm Runtime Analysis Lecture Notes Fall 2015

1 Introduction These notes introduce basic runtime analysis of algorithms. We would like to be able to tell if a given algorithm is time-efficient, and to be able to compare different algorithms. 2 Linear

IRA EXAMPLES. This topic has two examples showing the calculation of the future value an IRA (Individual Retirement Account).

IRA EXAMPLES This topic has two examples showing the calculation of the future value an IRA (Individual Retirement Account). Definite Counting Loop Example IRA After x Years This first example illustrates

Introduction to Programming (in C++) Multi-dimensional vectors. Jordi Cortadella, Ricard Gavaldà, Fernando Orejas Dept. of Computer Science, UPC

Introduction to Programming (in C++) Multi-dimensional vectors Jordi Cortadella, Ricard Gavaldà, Fernando Orejas Dept. of Computer Science, UPC Matrices A matrix can be considered a two-dimensional vector,

CS 141: Introduction to (Java) Programming: Exam 1 Jenny Orr Willamette University Fall 2013

Oct 4, 2013, p 1 Name: CS 141: Introduction to (Java) Programming: Exam 1 Jenny Orr Willamette University Fall 2013 1. (max 18) 4. (max 16) 2. (max 12) 5. (max 12) 3. (max 24) 6. (max 18) Total: (max 100)

Java iteration statements

Java iteration statements Iteration statements are statements which appear in the source code only once, but it execute many times. Such kind of statements are called loops. Almost all the programming

Conditions & Boolean Expressions

Conditions & Boolean Expressions 1 In C++, in order to ask a question, a program makes an assertion which is evaluated to either true (nonzero) or false (zero) by the computer at run time. Example: In

Part I:( Time: 90 minutes, 30 Points)

Qassim University Deanship of Educational Services Preparatory Year Program- Computer Science Unit Final Exam - 1434/1435 CSC111 Time: 2 Hours + 10 Minutes 1 MG Student name: Select the correct choice:

ECE 122. Engineering Problem Solving with Java

ECE 122 Engineering Problem Solving with Java Introduction to Electrical and Computer Engineering II Lecture 1 Course Overview Welcome! What is this class about? Java programming somewhat software somewhat

Conditional Statements. 15-110 Summer 2010 Margaret Reid-Miller

Conditional Statements 15-110 Summer 2010 Margaret Reid-Miller Conditional statements Within a method, we can alter the flow of control (the order in which statements are executed) using either conditionals

Stacks. Stacks (and Queues) Stacks. q Stack: what is it? q ADT. q Applications. q Implementation(s) CSCU9A3 1

Stacks (and Queues) 1 Stacks Stack: what is it? ADT Applications Implementation(s) 2 CSCU9A3 1 Stacks and ueues A stack is a very important data structure in computing science. A stack is a seuence of

QUIZ-II QUIZ-II. Chapter 5: Control Structures II (Repetition) Objectives. Objectives (cont d.) 20/11/2015. EEE 117 Computer Programming Fall-2015 1

QUIZ-II Write a program that mimics a calculator. The program should take as input two integers and the operation to be performed. It should then output the numbers, the operator, and the result. (For

Object-Oriented Design Concepts via Playing Cards Owen Astrachan Duke University

Object-Oriented Design Concepts via Playing Cards Owen Astrachan Duke University Most students have played card games: blackjack, war, hearts, solitaire, bridge. The list of games isn't infinite, but it's

Software Testing. Definition: Testing is a process of executing a program with data, with the sole intention of finding errors in the program.

Software Testing Definition: Testing is a process of executing a program with data, with the sole intention of finding errors in the program. Testing can only reveal the presence of errors and not the

The following program is aiming to extract from a simple text file an analysis of the content such as:

Text Analyser Aim The following program is aiming to extract from a simple text file an analysis of the content such as: Number of printable characters Number of white spaces Number of vowels Number of

Graphing Parabolas With Microsoft Excel

Graphing Parabolas With Microsoft Excel Mr. Clausen Algebra 2 California State Standard for Algebra 2 #10.0: Students graph quadratic functions and determine the maxima, minima, and zeros of the function.

Searching Algorithms

Searching Algorithms The Search Problem Problem Statement: Given a set of data e.g., int [] arr = {10, 2, 7, 9, 7, 4}; and a particular value, e.g., int val = 7; Find the first index of the value in the

What is a Loop? Pretest Loops in C++ Types of Loop Testing. Count-controlled loops. Loops can be...

What is a Loop? CSC Intermediate Programming Looping A loop is a repetition control structure It causes a single statement or a group of statements to be executed repeatedly It uses a condition to control

Repetition and Loops. Additional Python constructs that allow us to effect the (1) order and (2) number of times that program statements are executed.

New Topic Repetition and Loops Additional Python constructs that allow us to effect the (1) order and (2) number of times that program statements are executed. These constructs are the 1. while loop and

Name: Class: Date: 9. The compiler ignores all comments they are there strictly for the convenience of anyone reading the program.

Name: Class: Date: Exam #1 - Prep True/False Indicate whether the statement is true or false. 1. Programming is the process of writing a computer program in a language that the computer can respond to

Sources: On the Web: Slides will be available on:

C programming Introduction The basics of algorithms Structure of a C code, compilation step Constant, variable type, variable scope Expression and operators: assignment, arithmetic operators, comparison,

COMPUTER SCIENCE. Paper 1 (THEORY)

COMPUTER SCIENCE Paper 1 (THEORY) (Three hours) Maximum Marks: 70 (Candidates are allowed additional 15 minutes for only reading the paper. They must NOT start writing during this time) -----------------------------------------------------------------------------------------------------------------------

Two-Dimensional Arrays. Multi-dimensional Arrays. Two-Dimensional Array Indexing

Multi-dimensional Arrays The elements of an array can be any type Including an array type So int 2D[] []; declares an array of arrays of int Two dimensional arrays are useful for representing tables of

Selection: if Statement

: if Statement The simplest selection structure in C++ is the if statement. Syntactically: 1 if The Boolean expression must be enclosed in parentheses, and

NIKLAUS WIRTH Algorithms + Data Structures = Programs

java04.frm Page 171 Saturday, August 26, 2000 6:03 PM 171 Linked Lists The simplest way to interrelate or link a set of elements is to line them up in a single list... For, in this case, only a single

Data Structures. Algorithm Performance and Big O Analysis

Data Structures Algorithm Performance and Big O Analysis What s an Algorithm? a clearly specified set of instructions to be followed to solve a problem. In essence: A computer program. In detail: Defined

Pseudo code Tutorial and Exercises Teacher s Version

Pseudo code Tutorial and Exercises Teacher s Version Pseudo-code is an informal way to express the design of a computer program or an algorithm in 1.45. The aim is to get the idea quickly and also easy

For each learner you will need: mini-whiteboard. For each small group of learners you will need: Card set A Factors; Card set B True/false.

Level A11 of challenge: D A11 Mathematical goals Starting points Materials required Time needed Factorising cubics To enable learners to: associate x-intercepts with finding values of x such that f (x)

CHAPTER 5 Adapter, Bridge, and Façade Objectives The objectives of this chapter are to identify the following: Complete the exercise in class design. Introduce the adapter, bridge, and façade patterns.

Moving from C++ to VBA

Introduction College of Engineering and Computer Science Mechanical Engineering Department Mechanical Engineering 309 Numerical Analysis of Engineering Systems Fall 2014 Number: 15237 Instructor: Larry

C++ Keywords. If/else Selection Structure. Looping Control Structures. Switch Statements. Example Program

C++ Keywords There are many keywords in C++ that are not used in other languages. bool, const_cast, delete, dynamic_cast, const, enum, extern, register, sizeof, typedef, explicit, friend, inline, mutable,

Modeling Kahn Process Networks in the Dynamic Dataflow Formalism

Roy Kensmil Page 1 6/20/2013 Modeling Kahn Process Networks in the Dynamic Dataflow Formalism Roy Kensmil Leiden Institute of Advanced Computer Science (LIACS), Leiden, The Netherlands rkensmil@liacs.nl

6. Control Structures

- 35 - Control Structures: 6. Control Structures A program is usually not limited to a linear sequence of instructions. During its process it may bifurcate, repeat code or take decisions. For that purpose,

First Java Programs. V. Paúl Pauca. CSC 111D Fall, 2015. Department of Computer Science Wake Forest University. Introduction to Computer Science

First Java Programs V. Paúl Pauca Department of Computer Science Wake Forest University CSC 111D Fall, 2015 Hello World revisited / 8/23/15 The f i r s t o b l i g a t o r y Java program @author Paul Pauca

While Loop. 6. Iteration

While Loop 1 Loop - a control structure that causes a set of statements to be executed repeatedly, (reiterated). While statement - most versatile type of loop in C++ false while boolean expression true

Recursive void Methods. Chapter 11. A recursive method is a method that includes a call to itself Recursion is based on the general problem.

Chapter 11 Recursion Recursive void Methods A recursive method is a method that includes a call to itself Recursion is based on the general problem solving technique of breaking down a task into subtasks

Pemrograman Dasar. Basic Elements Of Java

Pemrograman Dasar Basic Elements Of Java Compiling and Running a Java Application 2 Portable Java Application 3 Java Platform Platform: hardware or software environment in which a program runs. Oracle

Software Development Phases

Software Development Phases Specification of the task Design of a solution Implementation of solution Analysis of solution Testing and debugging Maintenance and evolution of the system Obsolescence Specification

2! Multimedia Programming with! Python and SDL

2 Multimedia Programming with Python and SDL 2.1 Introduction to Python 2.2 SDL/Pygame: Multimedia/Game Frameworks for Python Literature: G. van Rossum and F. L. Drake, Jr., An Introduction to Python -

Building Java Programs

Building Java Programs Chapter 4 Lecture 4-1: Scanner; if/else reading: 3.3 3.4, 4.1 Interactive Programs with Scanner reading: 3.3-3.4 1 Interactive programs We have written programs that print console

CS104: Data Structures and Object-Oriented Design (Fall 2013) October 24, 2013: Priority Queues Scribes: CS 104 Teaching Team

CS104: Data Structures and Object-Oriented Design (Fall 2013) October 24, 2013: Priority Queues Scribes: CS 104 Teaching Team Lecture Summary In this lecture, we learned about the ADT Priority Queue. A

5.2 Q2 The control variable of a counter-controlled loop should be declared as: a.int. b.float. c.double. d.any of the above. ANS: a. int.

Java How to Program, 5/e Test Item File 1 of 5 Chapter 5 Section 5.2 5.2 Q1 Counter-controlled repetition requires a.a control variable and initial value. b.a control variable increment (or decrement).

CSCI 123 INTRODUCTION TO PROGRAMMING CONCEPTS IN C++

Brad Rippe CSCI 123 INTRODUCTION TO PROGRAMMING CONCEPTS IN C++ Recursion Recursion CHAPTER 14 Overview 14.1 Recursive Functions for Tasks 14.2 Recursive Functions for Values 14.3 Thinking Recursively

Cours de C++ Utilisations des conteneurs

Cours de C++ Utilisations des conteneurs Cécile Braunstein cecile.braunstein@lip6.fr 1 / 18 Introduction Containers - Why? Help to solve messy problems Provide useful function and data structure Consistency

SOFTWARE ENGINEERING 2: OBJECT ORIENTED SOFTWARE ENGINEERING

SOFTWARE ENGINEERING 2: OBJECT ORIENTED SOFTWARE ENGINEERING 1. This is a general question about Object Oriented Software Engineering. a) Compare and contrast how software complexity is handled in Structured

Chapter 2 Introduction to Java programming

Chapter 2 Introduction to Java programming 1 Keywords boolean if interface class true char else package volatile false byte final switch while throws float private case return native void protected break

Introduction to Programming in C++: Algorithms, Flowcharts and Pseudocode

Introduction to Programming in C++: Algorithms, Flowcharts and Pseudocode by Brent Daviduck The following material was developed by Brent Daviduck of the Computer Systems Technology program at Red Deer

8.1. Example: Visualizing Data

Chapter 8. Arrays and Files In the preceding chapters, we have used variables to store single values of a given type. It is sometimes convenient to store multiple values of a given type in a single collection

9 Control Statements. 9.1 Introduction. 9.2 Objectives. 9.3 Statements

9 Control Statements 9.1 Introduction The normal flow of execution in a high level language is sequential, i.e., each statement is executed in the order of its appearance in the program. However, depending

Class Overview. CSE 326: Data Structures. Goals. Goals. Data Structures. Goals. Introduction

Class Overview CSE 326: Data Structures Introduction Introduction to many of the basic data structures used in computer software Understand the data structures Analyze the algorithms that use them Know

Understanding class definitions

OFWJ_C02.QXD 2/3/06 2:28 pm Page 17 CHAPTER 2 Understanding class definitions Main concepts discussed in this chapter: fields methods (accessor, mutator) constructors assignment and conditional statement

Two-Dimensional Arrays

Two-Dimensional Arrays Readings: IJP Sections 8.1 8.7 CSE114: Computer Science I Spring 2016 CHEN-WEI WANG Two-Dimensional Arrays: Motivation Consider a table of distances between cities: Chicago Boston

JAVA PRIMITIVE DATA TYPE

JAVA PRIMITIVE DATA TYPE Description Not everything in Java is an object. There is a special group of data types (also known as primitive types) that will be used quite often in programming. For performance

The While Loop. Objectives. Textbook. WHILE Loops

Objectives The While Loop 1E3 Topic 6 To recognise when a WHILE loop is needed. To be able to predict what a given WHILE loop will do. To be able to write a correct WHILE loop. To be able to use a WHILE

Arrays. number: Motivation. Prof. Stewart Weiss. Software Design Lecture Notes Arrays

Motivation Suppose that we want a program that can read in a list of numbers and sort that list, or nd the largest value in that list. To be concrete about it, suppose we have 15 numbers to read in from

The Payroll Program. Payroll

The Program 1 The following example is a simple payroll program that illustrates most of the core elements of the C++ language covered in sections 3 through 6 of the course notes. During the term, a formal

1) The postfix expression for the infix expression A+B*(C+D)/F+D*E is ABCD+*F/DE*++

Answer the following 1) The postfix expression for the infix expression A+B*(C+D)/F+D*E is ABCD+*F/DE*++ 2) Which data structure is needed to convert infix notations to postfix notations? Stack 3) The

Object Oriented Software Design

Object Oriented Software Design Introduction to Java - II Giuseppe Lipari http://retis.sssup.it/~lipari Scuola Superiore Sant Anna Pisa October 28, 2010 G. Lipari (Scuola Superiore Sant Anna) Introduction

Java Basics: Data Types, Variables, and Loops

Java Basics: Data Types, Variables, and Loops If debugging is the process of removing software bugs, then programming must be the process of putting them in. - Edsger Dijkstra Plan for the Day Variables

Introduction to Programming (in C++) Sorting. Jordi Cortadella, Ricard Gavaldà, Fernando Orejas Dept. of Computer Science, UPC

Introduction to Programming (in C++) Sorting Jordi Cortadella, Ricard Gavaldà, Fernando Orejas Dept. of Computer Science, UPC Sorting Let elem be a type with a operation, which is a total order A vector

Data Structures and Algorithms Written Examination

Data Structures and Algorithms Written Examination 22 February 2013 FIRST NAME STUDENT NUMBER LAST NAME SIGNATURE Instructions for students: Write First Name, Last Name, Student Number and Signature where