Arrays. Friday, November 9, Department of Computer Science Wellesley College
|
|
- Martha Underwood
- 5 years ago
- Views:
Transcription
1 Arrays Friday, November 9, CS Computer Programming Department of Computer Science Wellesley College Arrays: Motivation o o o Lists are great for representing a collection of values, but can only access elements in order from front to back. We often want an indexed collection where we can directly access an element at any index. Many languages (including Java) provide arrays for this purpose. An array is an indexed collection of variables, which we will call the slots of the array. The values in the slots are the elements of the array. ExecutionLand ObjectLand am Sam Arrays -
2 Anatomy of an Array Diagram ObjectLand an array object the type of the array object (T [ ] is pronounced array of T ) slot indices slots (variables) elements am Sam Arrays - Arrays Are Homogeneous Collections All the elements of a Java* array must have the same type. tests false boolean [] false false true am Sam line Location [] Location Location * We ll only talk about Java arrays in this lecture. Array details can differ from language to language. x y 5 x - y Arrays -
3 Arrays Have a Fixed Length The length of an array is the number of slots = the number of elements = one more than the largest index. E.g., the length of is. An array s length is fixed: once an array is created, its length cannot be changed. If a denotes an array, a.length stands for its length. E.g..length evaluates to. It s as if each array object has a length instance variable We usually do not explicitly show this variable. Its value cannot be changed. am Sam length am Sam Arrays -5 Length Examples Expression.length tests.length line.length single.length none.length Value tests line false boolean [] false false Location [] true Location Location single none x y 5 x y - Arrays -
4 Array Indexing If a denotes an array and i denotes an integer, the notation a[i] (pronounced a sub i ) refers to the ith slot of a. In most contexts, a[i] evaluates to the contents of the slot: [] // evaluates to am [] // evaluates to tests[+] // evaluates to true line[].x // evaluates to 5 tests line boolean [] false false false Location [] true Location x 5 Location x - am Sam y y Arrays - ArrayIndexOutOfBoundsException An ArrayIndexOutOfBoundsException occurs when an invalid index is used. Examples: [-] [] [] (gotcha!) [.length] (gotcha!) am Sam Arrays -
5 Array Slots are Mutable The assignment a[i] = val changes the contents of the ith slot of a to val. [] = ; [] = [] + []; []++; // means [] = [] + ; Arrays -9 Swapping Array Elements public static void swap ( strings, int i, int j) { am Sam swap(,,); Sam am swap(,,); Sam am Arrays - 5
6 Array Creation type of array elements = new int[5]; name of variable referring to array number of slots Slots are initially filled with the default value for element type: for int. for double false for boolean null for any Object Arrays - Initializing an Array Can change default slot values with assignments. = new int[5]; [] = ; [] = ; [] = ; [] = ; [] = ; The above code can be abbreviated as: int [ ] = new int [ ] {,,,, ; This form can be used wherever an array expression is expected. Arrays -
7 Array Elements can be Any Type = new {, am, Sam ; am Sam boolean [] tests = new boolean [] {false, false, false, true; tests false boolean [] false false true Location [] line = new Location [] {new Location(5,), new Location(-,); line Location [] Location Location x 5 x - y y Arrays - Pop Quiz! What Does This Code Print? Buggle [] bugs = new Buggle [] {new Buggle(), new Buggle(); bugs[].forward(); bugs[].left(); Buggle becky = new Buggle(); becky.setposition(bugs[].getposition()); becky.setheading(bugs[].getheading()); bugs[] = becky; bugs[] = bugs[]; bugs[].forward(); System.out.println(bugs[].getPosition()); Arrays -
8 Null Pointers The default array value for Objects is null (the null pointer), which represents no object. = new ; We depict variables holding the null pointer value as a box with a slash. [] = ; [] = am ; [] == null // evaluates to false [] == null // evaluates to true; am Arrays -5 NullPointerException am Any attempt to send a message to the null pointer value results in a NullPointerException. [].length() // evaluates to // (length of string am, not of array) [].length() // generates a NullPointerException NullPointerExceptions due to uninitialized variables are extremely common and will haunt you from now on. Arrays -
9 main() Arguments Explained! public class PrintArgs { public static void main (String [ ] args) { for (int i = ; i < args.length; i++) { System.out.println( args[ + i + ] = + args[i]); args > java PrintArgs CS rocks. Sam I am! args[] = CS args[] = args[] = rocks args[] =. args[] = Sam I am! CS rocks Sam I am!. Arrays - tostring() and fromstring() The default tostring() instance method for an array doesn t display its elements. Instead, it gives something unintelligible:.tostring() // evaluates to "[I@e5d" = + // evaluates to " = [I@e5d" The CS classes IntArray and StringArray provide tostring() class methods that are more sensible: IntArray.toString() // evaluates to {,,,, StringArray.toString() // evaluates to {I,am,Sam StringArray.toString() // evaluates to {I,am,null They also provide fromstring() class methods for creating arrays from strings written in this format: = IntArray.fromString( {,,,, ); = StringArray.fromString( {I,am,Sam ); Arrays - 9
10 split() The split() instance method of the String class is useful for creating string arrays: String [ ] seuss = I do not like green eggs and ham.split( ); StringArray.toString(seuss) // evaluates to {I,do,not,like,green,eggs,and,ham Arrays -9 Summing an Array Want IntArray.sum() Iteration Table i result 5 // Assume this is in the class IntArray public static int sum (int [ ] a) { Arrays -
11 Testing sum() Can test interactively in the Dr. Java Interaction Pane: > IntArray.sum(new {,,,,) Can include hardwired test arrays in a main() method: public static void main ( args) { String [ ] test = new int [ ] {,,,,; System.out.println( sum( + IntArray.toString(test)+ ) = + sum(test)); Can read test arrays from the command line: public static void main ( args) { String [ ] test = new int [args.length]; for (int i = ; i < args.length; i++) { test[i] = Integer.parseInt(args[i]); System.out.println( sum( + IntArray.toString(test) + ) = + sum(test)); Arrays - Summing from Top Down Want IntArray.sum() Iteration Table i result - // Assume this is in the class IntArray public static int sum (int [ ] a) { Arrays -
12 Doubling the Elements of an Array Before: IntArray.mapDouble(); After: // Assume this is in the class IntArray public static void mapdouble ( a) { Arrays - Destructive Mapping Idiom Before: IntArray.mapDouble(); After: mapdouble() illustrates the mapping idiom for arrays. It is destructive in the sense that it replaces the original values in the array slots. Arrays -
13 Nondestructive (Copying) Mapper Before: c = IntArray.mapDoubleCopy(); After: c // Assume this is in the class IntArray public static mapdoublecopy ( a) { Arrays -5 Destructive Array Reversal Before: IntArray.reverse(); After: // Assume this is in the class IntArray public static void reverse ( a) { Arrays -
14 A Broken Array Reversal The following destructive reverse method attempts to reverse an array using swap(). Unfortunately, it has a bug. Please fix the method so that it works. // Assume this is in the class IntArray public static void reverse ( a) { for (int i = ; i < a.length; i++) { IntArray.swap(a, i, a.length - i); Arrays - Nondestructive Array Reversal Before: c = IntArray.reverseCopy(); After: c // Assume this is in the class IntArray public static reversecopy ( a) { Arrays -
15 Array Filtering Before: evens = IntArray.filterEvensCopy(); After: evens evens // Assume this is in the class IntArray public static filterevenscopy ( a) { Arrays -9 Accessing Elements: Lists vs. Arrays Accessing the ith element of a list takes time proportional to i. list Ø Accessing the ith element of an array can be done directly. The time it takes is the same for any i. array Arrays - 5
16 Good news & bad news Find first element Find last element Add element to front Add element to end Find length Mutable Work for diff types Lists Arrays list Ø array Arrays - Java Arrays: Summary of Properties o Arrays are fixed-length indexed collections of elements. Once created, the size of an array cannot change. o Elements are -indexed (i.e., indices start at, not ). o Every element can be accessed cheaply, independent of index. o Arrays are homogeneous collections: all elements must have the same type. o There is a special concise syntax for creating, accessing and updating arrays. o Dynamic (run-time) index checking ensures that indices of all array operations are valid. o Arrays are objects that are not instances of any class. o Arrays are the answer to the following analogy question: Recursion : lists :: iteration :??? Arrays -
Birkbeck (University of London) Software and Programming 1 In-class Test Mar 2018
Birkbeck (University of London) Software and Programming 1 In-class Test 2.1 22 Mar 2018 Student Name Student Number Answer ALL Questions 1. What output is produced when the following Java program fragment
More informationCS Programming I: Arrays
CS 200 - Programming I: Arrays Marc Renault Department of Computer Sciences University of Wisconsin Madison Fall 2017 TopHat Sec 3 (PM) Join Code: 719946 TopHat Sec 4 (AM) Join Code: 891624 Array Basics
More informationInput/Output (I/0) What is File I/O? Writing to a File. Writing to Standard Output. CS111 Computer Programming
What is File I/O? Input/Output (I/0) Thu. Apr. 12, 2012 Computer Programming A file is an abstraction for storing information (text, images, music, etc.) on a computer. Today we will explore how to read
More informationJava How to Program, 10/e. Copyright by Pearson Education, Inc. All Rights Reserved.
Java How to Program, 10/e Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved. Data structures Collections of related data items. Discussed in depth in Chapters 16 21. Array objects Data
More informationLab Assignment Three
Lab Assignment Three C212/A592 Fall Semester 2010 Due in OnCourse by Friday, September 17, 11:55pm (Dropbox will stay open until Saturday, September 18, 11:55pm) Abstract Read and solve the problems below.
More informationCS111: PROGRAMMING LANGUAGE II
CS111: PROGRAMMING LANGUAGE II Computer Science Department Lecture 1(c): Java Basics (II) Lecture Contents Java basics (part II) Conditions Loops Methods Conditions & Branching Conditional Statements A
More informationCS S-08 Arrays and Midterm Review 1
CS112-2012S-08 Arrays and Midterm Review 1 08-0: Arrays ArrayLists are not part of Java proper 08-1: Arrays Library class Created using lower-level Java construct: Array Arrays are like a stripped-down
More informationArrays. COMS W1007 Introduction to Computer Science. Christopher Conway 10 June 2003
Arrays COMS W1007 Introduction to Computer Science Christopher Conway 10 June 2003 Arrays An array is a list of values. In Java, the components of an array can be of any type, basic or object. An array
More informationCS61B Lecture #2. Public Service Announcements:
CS61B Lecture #2 Please make sure you have obtained an account, run register, and finished the survey today. In the future (next week), the password required for surveys and such will be your account password
More informationint a; int b = 3; for (a = 0; a < 8 b < 20; a++) {a = a + b; b = b + a;}
1. What does mystery(3) return? public int mystery (int n) { int m = 0; while (n > 1) {if (n % 2 == 0) n = n / 2; else n = 3 * n + 1; m = m + 1;} return m; } (a) 0 (b) 1 (c) 6 (d) (*) 7 (e) 8 2. What are
More informationCS 112 Introduction to Computing II. Wayne Snyder Computer Science Department Boston University
9/5/6 CS Introduction to Computing II Wayne Snyder Department Boston University Today: Arrays (D and D) Methods Program structure Fields vs local variables Next time: Program structure continued: Classes
More informationCISC-124. Casting. // this would fail because we can t assign a double value to an int // variable
CISC-124 20180122 Today we looked at casting, conditionals and loops. Casting Casting is a simple method for converting one type of number to another, when the original type cannot be simply assigned to
More informationCIS 120 Midterm II November 16, 2012 SOLUTIONS
CIS 120 Midterm II November 16, 2012 SOLUTIONS 1 1. Java vs. OCaml (22 points) a. In OCaml, the proper way to check whether two string values s and t are structurally equal is: s == t s = t s.equals(t)
More informationComputer Science 1 Ah
UNIVERSITY OF EDINBURGH course CS0077 COLLEGE OF SCIENCE AND ENGINEERING SCHOOL OF INFORMATICS Computer Science 1 Ah Resit Examination Specimen Solutions Date: Monday 1st September 2003 Time: 09:30 11:00
More informationDepartment of Electrical Engineering and Computer Science MASSACHUSETTS INSTITUTE OF TECHNOLOGY
Department of Electrical Engineering and Computer Science MASSACHUSETTS INSTITUTE OF TECHNOLOGY 6.095: Introduction to Computer Science and Programming Quiz I In order to receive credit you must answer
More informationnamibia UniVERSITY OF SCIEnCE AnD TECHnOLOGY
namibia UniVERSITY OF SCIEnCE AnD TECHnOLOGY Faculty of Computing and Informatics Department of Computer Science QUALIFICATION: Bachelor of Computer Science, Bachelor of Informatics, Bachelor of Engineering
More informationJava Programming: from the Beginning
CSc 2310: Principle of Programming g( (Java) Spring 2013 Java Programming: from the Beginning Chapter 5 Arrays 1 Copyright 2000 W. W. Norton & Company. All rights reserved. Outline 5.1 Creating and Using
More informationCS61C Machine Structures. Lecture 3 Introduction to the C Programming Language. 1/23/2006 John Wawrzynek. www-inst.eecs.berkeley.
CS61C Machine Structures Lecture 3 Introduction to the C Programming Language 1/23/2006 John Wawrzynek (www.cs.berkeley.edu/~johnw) www-inst.eecs.berkeley.edu/~cs61c/ CS 61C L03 Introduction to C (1) Administrivia
More informationAssignment 1 is due tonight at 11:59pm. Assignment 2 is due next Thursday at 11:59pm
Assignment 1 is due tonight at 11:59pm Assignment 2 is due next Thursday at 11:59pm Reading for Monday s class is the remainder of Chapter 7 and all of Chapter 8 The entire array has a single name Each
More informationArrays. Eng. Mohammed Abdualal
Islamic University of Gaza Faculty of Engineering Computer Engineering Department Computer Programming Lab (ECOM 2114) Created by Eng: Mohammed Alokshiya Modified by Eng: Mohammed Abdualal Lab 9 Arrays
More informationUniversity of Palestine. Mid Exam Total Grade: 100
First Question No. of Branches (5) A) Choose the correct answer: 1. If we type: system.out.println( a ); in the main() method, what will be the result? int a=12; //in the global space... void f() { int
More informationCSEN 202: Introduction to Computer Programming Spring term Final Exam
Page 0 German University in Cairo May 28, 2016 Media Engineering and Technology Prof. Dr. Slim Abdennadher Dr. Wael Aboul Saadat CSEN 202: Introduction to Computer Programming Spring term 2015-2016 Final
More informationCS 1110: Introduction to Computing Using Python Loop Invariants
CS 1110: Introduction to Computing Using Python Lecture 21 Loop Invariants [Andersen, Gries, Lee, Marschner, Van Loan, White] Announcements Prelim 2 conflicts due by midnight tonight Lab 11 is out Due
More informationProject Compiler. CS031 TA Help Session November 28, 2011
Project Compiler CS031 TA Help Session November 28, 2011 Motivation Generally, it s easier to program in higher-level languages than in assembly. Our goal is to automate the conversion from a higher-level
More informationObject-oriented programming. and data-structures CS/ENGRD 2110 SUMMER 2018
Object-oriented programming 1 and data-structures CS/ENGRD 2110 SUMMER 2018 Lecture 1: Types and Control Flow http://courses.cs.cornell.edu/cs2110/2018su Lecture 1 Outline 2 Languages Overview Imperative
More informationCS2: Debugging in Java
CS2: Debugging in Java 1. General Advice Jon Cook (LFCS) April 2003 Debugging is not always easy. Some bugs can take a long time to find. Debugging concurrent code can be particularly difficult and time
More informationBinghamton University. CS-140 Fall Problem Solving. Creating a class from scratch
Problem Solving Creating a class from scratch 1 Recipe for Writing a Class 1. Write the class boilerplate stuff 2. Declare Fields 3. Write Creator(s) 4. Write accessor methods 5. Write mutator methods
More informationCS61B Lecture #3. Homework: Please see Homework #1 on the lab page. Last modified: Wed Sep 10 20:34: CS61B: Lecture #3 1
CS61B Lecture #3 Reading: Please read Chapter4of the readerajava Reference for Friday (on Values, Types, and Containers). Labs: We are forgiving during the first week, but try to get your lab1 submitted
More informationCS18000: Problem Solving And Object-Oriented Programming
CS18000: Problem Solving And Object-Oriented Programming Class (and Program) Structure 31 January 2011 Prof. Chris Clifton Classes and Objects Set of real or virtual objects Represent Template in Java
More informationCS159. Nathan Sprague
CS159 Nathan Sprague What s wrong with the following code? 1 /* ************************************************** 2 * Return the mean, or -1 if the array has length 0. 3 ***************************************************
More informationArray. Array Declaration:
Array Arrays are continuous memory locations having fixed size. Where we require storing multiple data elements under single name, there we can use arrays. Arrays are homogenous in nature. It means and
More informationComputer Science II (20082) Week 1: Review and Inheritance
Computer Science II 4003-232-08 (20082) Week 1: Review and Inheritance Richard Zanibbi Rochester Institute of Technology Review of CS-I Syntax and Semantics of Formal (e.g. Programming) Languages Syntax
More information3. Convert 2E from hexadecimal to decimal. 4. Convert from binary to hexadecimal
APCS A Midterm Review You will have a copy of the one page Java Quick Reference sheet. This is the same reference that will be available to you when you take the AP Computer Science exam. 1. n bits can
More informationCSCI 135 Exam #0 Fundamentals of Computer Science I Fall 2013
CSCI 135 Exam #0 Fundamentals of Computer Science I Fall 2013 Name: This exam consists of 7 problems on the following 6 pages. You may use your single- side hand- written 8 ½ x 11 note sheet during the
More informationSelected Questions from by Nageshwara Rao
Selected Questions from http://way2java.com by Nageshwara Rao Swaminathan J Amrita University swaminathanj@am.amrita.edu November 24, 2016 Swaminathan J (Amrita University) way2java.com (Nageshwara Rao)
More informationPractice exam for CMSC131-04, Fall 2017
Practice exam for CMSC131-04, Fall 2017 Q1 makepalindrome - Relevant topics: arrays, loops Write a method makepalidrome that takes an int array, return a new int array that contains the values from the
More informationCSCI 135 Exam #1 Fundamentals of Computer Science I Fall 2013
CSCI 135 Exam #1 Fundamentals of Computer Science I Fall 2013 Name: This exam consists of 5 problems on the following 7 pages. You may use your two- sided hand- written 8 ½ x 11 note sheet during the exam.
More informationCS1150 Principles of Computer Science Arrays
CS1150 Principles of Computer Science Arrays Yanyan Zhuang Department of Computer Science http://www.cs.uccs.edu/~yzhuang CS1150 UC. Colorado Springs Opening Problem Read one hundred numbers, compute their
More informationMethod OverLoading printf method Arrays Declaring and Using Arrays Arrays of Objects Array as Parameters
Outline Method OverLoading printf method Arrays Declaring and Using Arrays Arrays of Objects Array as Parameters Variable Length Parameter Lists split() Method from String Class Integer & Double Wrapper
More informationLecture 3. Lecture
True Object-Oriented programming: Dynamic Objects Static Object-Oriented Programming Reference Variables Eckel: 30-31, 41-46, 107-111, 114-115 Riley: 5.1, 5.2 D0010E Object-Oriented Programming and Design
More informationProgramming Languages and Techniques (CIS120)
Programming Languages and Techniques (CIS120) Lecture 23 March 16, 2018 Arrays, Java ASM What is the value of ans at the end of this program? int[] a = {1, 2, 3, 4; int[] b = a; b[0] = 0; int ans = a[0];
More informationCSE115 / CSE503 Introduction to Computer Science I Dr. Carl Alphonce 343 Davis Hall Office hours:
CSE115 / CSE503 Introduction to Computer Science I Dr. Carl Alphonce 343 Davis Hall alphonce@buffalo.edu Office hours: Tuesday 10:00 AM 12:00 PM * Wednesday 4:00 PM 5:00 PM Friday 11:00 AM 12:00 PM OR
More informationArray. Lecture 12. Based on Slides of Dr. Norazah Yusof
Array Lecture 12 Based on Slides of Dr. Norazah Yusof 1 Introducing Arrays Array is a data structure that represents a collection of the same types of data. In Java, array is an object that can store a
More informationTopics. Java arrays. Definition. Data Structures and Information Systems Part 1: Data Structures. Lecture 3: Arrays (1)
Topics Data Structures and Information Systems Part 1: Data Structures Michele Zito Lecture 3: Arrays (1) Data structure definition: arrays. Java arrays creation access Primitive types and reference types
More information10 Control and Iteration
10 Control and Iteration 10.1 Introduction This chapter introduces control and iteration in Java. In Java, as in many other languages, the mainstay of the control and iteration processes are the if and
More informationint b = 2; for (int a = 0; a < 10 b < 20; a++) { a = a + b; b = b + a; }
1. What does mystery(9870) return? public int mystery(int n) { String m = ""; while (n > 0) { m = m + n%10; n = n/10; return m; (a) "9870" (b) "987" (c) "0" (d) "789" (e) "7890" 2. What are the values
More informationCMSC 330: Organization of Programming Languages. Functional Programming with Lists
CMSC 330: Organization of Programming Languages Functional Programming with Lists 1 Lists in OCaml The basic data structure in OCaml Lists can be of arbitrary length Implemented as a linked data structure
More informationCIS 120 Midterm II November 16, Name (printed): Pennkey (login id):
CIS 120 Midterm II November 16, 2012 Name (printed): Pennkey (login id): My signature below certifies that I have complied with the University of Pennsylvania s Code of Academic Integrity in completing
More informationTypes, Expressions, and States
8/27: solved Types, Expressions, and States CS 536: Science of Programming, Fall 2018 A. Why? Expressions represent values in programming languages, relative to a state. Types describe common properties
More informationExceptions. What exceptional things might our programs run in to?
Exceptions What exceptional things might our programs run in to? Exceptions do occur Whenever we deal with programs, we deal with computers and users. Whenever we deal with computers, we know things don
More information! Theoretical examples: ! Examples from Java: ! data type: A category of data values. " Example: integer, real number, string
Object types Example object types! So far, we have seen: ( types " variables, which represent data (categorized by " methods, which represent behavior! object: An variable that contains data and behavior.
More informationComputação I. Exercises. Leonardo Vanneschi NOVA IMS, Universidade Nova de Lisboa. Leonardo Vanneschi Computação I NOVA IMS
Computação I Exercises Leonardo Vanneschi NOVA IMS, Universidade Nova de Lisboa 1 Exercise 1 Write a Java program composed by: a. A method called myaverage that has the following parameters: an array A
More informationPrelim 1. CS 2110, October 1, 2015, 5:30 PM Total Question Name True Short Testing Strings Recursion
Prelim 1 CS 2110, October 1, 2015, 5:30 PM 0 1 2 3 4 5 Total Question Name True Short Testing Strings Recursion False Answer Max 1 20 36 16 15 12 100 Score Grader The exam is closed book and closed notes.
More informationFall 2005 CS 11 Final exam Answers
Fall 2005 CS 11 Final exam Answers 1. Question: (5 points) In the following snippet of code, identify all places where type casting would occur automatically or would need to occur through a forced cast.
More informationNews and information! Review: Java Programs! Feedback after Lecture 2! Dead-lines for the first two lab assignment have been posted.!
True object-oriented programming: Dynamic Objects Reference Variables D0010E Object-Oriented Programming and Design Lecture 3 Static Object-Oriented Programming UML" knows-about Eckel: 30-31, 41-46, 107-111,
More informationProgramming Languages and Techniques (CIS120)
Programming Languages and Techniques (CIS120) Lecture 26 March 23, 2016 Inheritance and Dynamic Dispatch Chapter 24 Inheritance Example public class { private int x; public () { x = 0; } public void incby(int
More informationCS 149. Professor: Alvin Chao
CS 149 Professor: Alvin Chao CS149 More with Classes and Objects OverLoading Let's look at the Car class... Terminology Method definition public void accelerate(double amount) { speed += amount; if (speed
More informationBirkbeck (University of London) Software and Programming 1 In-class Test Mar Answer ALL Questions
Birkbeck (University of London) Software and Programming 1 In-class Test 2.1 16 Mar 2017 Student Name Student Number Answer ALL Questions 1. What output is produced when the following Java program fragment
More informationChecked and Unchecked Exceptions in Java
Checked and Unchecked Exceptions in Java Introduction In this article from my free Java 8 course, I will introduce you to Checked and Unchecked Exceptions in Java. Handling exceptions is the process by
More informationClass definition. complete definition. public public class abstract no instance can be created final class cannot be extended
JAVA Classes Class definition complete definition [public] [abstract] [final] class Name [extends Parent] [impelements ListOfInterfaces] {... // class body public public class abstract no instance can
More informationCS 112 Introduction to Computing II. Wayne Snyder Computer Science Department Boston University
CS 11 Introduction to Computing II Wayne Snyder Department Boston University Today Object-Oriented Programming Concluded Stacks, Queues, and Priority Queues as Abstract Data Types Reference types: Basic
More informationJump Statements. The keyword break and continue are often used in repetition structures to provide additional controls.
Jump Statements The keyword break and continue are often used in repetition structures to provide additional controls. break: the loop is terminated right after a break statement is executed. continue:
More informationClasses Classes 2 / 35
Classes 1 / 35 Classes Classes 2 / 35 Anatomy of a Class By the end of next lecture, you ll understand everything in this class definition. package edu. gatech. cs1331. card ; import java. util. Arrays
More informationFinal Examination Semester 2 / Year 2011
Southern College Kolej Selatan 南方学院 Final Examination Semester 2 / Year 2011 COURSE : FUNDAMENTALS OF SOFTWARE DESIGEN AND DEVELOPMENT COURSE CODE : PROG1003 TIME : 2 1/2 HOURS DEPARTMENT : COMPUTER SCIENCE
More informationArray. Prepared By - Rifat Shahriyar
Java More Details Array 2 Arrays A group of variables containing values that all have the same type Arrays are fixed length entities In Java, arrays are objects, so they are considered reference types
More informationJump Statements. The keyword break and continue are often used in repetition structures to provide additional controls.
Jump Statements The keyword break and continue are often used in repetition structures to provide additional controls. break: the loop is terminated right after a break statement is executed. continue:
More informationCSCI 135 Exam #1 Fundamentals of Computer Science I Fall 2014
CSCI 135 Exam #1 Fundamentals of Computer Science I Fall 2014 Name: This exam consists of 8 problems on the following 8 pages. You may use your two- sided hand- written 8 ½ x 11 note sheet during the exam.
More informationAP CS Unit 7: Arrays Exercises
AP CS Unit 7: Arrays Exercises 1. What is displayed? int [] a = new int[ 3 ]; System.out.println(a.length ); 2. What is displayed? int [] sting = { 34, 23, 67, 89, 12 ; System.out.println( sting[ 1 ] );
More informationCOS 126 General Computer Science Spring Written Exam 1
COS 126 General Computer Science Spring 2017 Written Exam 1 This exam has 9 questions (including question 0) worth a total of 70 points. You have 50 minutes. Write all answers inside the designated spaces.
More informationChapter 5: Arrays. Chapter 5. Arrays. Java Programming FROM THE BEGINNING. Copyright 2000 W. W. Norton & Company. All rights reserved.
Chapter 5 Arrays 1 5.1 Creating and Using Arrays A collection of data items stored under a single name is known as a data structure. An object is one kind of data structure, because it can store multiple
More informationCS5000: Foundations of Programming. Mingon Kang, PhD Computer Science, Kennesaw State University
CS5000: Foundations of Programming Mingon Kang, PhD Computer Science, Kennesaw State University Arrays A data structure for a collection of data that is all of the same data type. The data type can be
More informationAgenda. Peer Instruction Question 1. Peer Instruction Answer 1. Peer Instruction Question 2 6/22/2011
CS 61C: Great Ideas in Computer Architecture (Machine Structures) Introduction to C (Part II) Instructors: Randy H. Katz David A. Patterson http://inst.eecs.berkeley.edu/~cs61c/sp11 Spring 2011 -- Lecture
More informationCS111: PROGRAMMING LANGUAGE II
1 CS111: PROGRAMMING LANGUAGE II Computer Science Department Lecture 1: Introduction Lecture Contents 2 Course info Why programming?? Why Java?? Write once, run anywhere!! Java basics Input/output Variables
More informationDynamic Data Types - Recursive Records
Dynamic Data Types - Recursive Records Example: class List { int hd; List tl ;} J.Carette (McMaster) CS 2S03 1 / 19 Dynamic Data Types - Recursive Records Example: class List { int hd; List tl ;} Note:
More informationCIS 110 Introduction to Computer Programming. 12 February 2013 Midterm. Answer Key
CIS 110 Introduction to Computer Programming 12 February 2013 Midterm Answer Key 0. (1 point) Miscellaneous (a) Write your name, recitation number, and PennKey (username) on the front of the exam. (b)
More information2/2/18. Assignment 2 is due Wednesday 14 February at 11:59pm. Reading for Monday s lecture is the remainder of Chapter 7 and all of Chapter 8
Assignment 2 is due Wednesday 14 February at 11:59pm Reading for Monday s lecture is the remainder of Chapter 7 and all of Chapter 8 The entire array has a single name scores Each value has a numeric index
More informationCS 101 Spring 2007 Midterm 2 Name: ID:
You only need to write your name and e-mail ID on the first page. This exam is CLOSED text book, closed-notes, closed-calculator, closed-neighbor, etc. Questions are worth different amounts, so be sure
More informationSorting. Bubble Sort. Selection Sort
Sorting In this class we will consider three sorting algorithms, that is, algorithms that will take as input an array of items, and then rearrange (sort) those items in increasing order within the array.
More informationRecursion: Recursion: repeated curses
Recursion: Programming can be viewed as the process of breaking a whole into parts, properly. This can be done in many ways. Recursion, is a special process of programming, where A whole is broken into
More informationQUEEN MARY, UNIVERSITY OF LONDON DCS128 ALGORITHMS AND DATA STRUCTURES Class Test Monday 27 th March
QUEEN MARY, UNIVERSITY OF LONDON DCS128 ALGORITHMS AND DATA STRUCTURES Class Test Monday 27 th March 2006 11.05-12.35 Please fill in your Examination Number here: Student Number here: MODEL ANSWERS All
More informationCS 231 Data Structures and Algorithms Fall Binary Search Trees Lecture 23 October 29, Prof. Zadia Codabux
CS 231 Data Structures and Algorithms Fall 2018 Binary Search Trees Lecture 23 October 29, 2018 Prof. Zadia Codabux 1 Agenda Ternary Operator Binary Search Tree Node based implementation Complexity 2 Administrative
More informationTutorial 11. Exercise 1: CSC111 Computer Programming I. A. Write a code snippet to define the following arrays:
College of Computer and Information Sciences CSC111 Computer Programming I Exercise 1: Tutorial 11 Arrays: A. Write a code snippet to define the following arrays: 1. An int array named nums of size 10.
More informationSorting. Weiss chapter , 8.6
Sorting Weiss chapter 8.1 8.3, 8.6 Sorting 5 3 9 2 8 7 3 2 1 4 1 2 2 3 3 4 5 7 8 9 Very many different sorting algorithms (bubblesort, insertion sort, selection sort, quicksort, heapsort, mergesort, shell
More informationProgramming Languages and Techniques (CIS120)
Programming Languages and Techniques (CIS120) Lecture 24 March 18, 2016 The Java ASM What is the value of ans at the end of this program? Counter[] a = { new Counter(), new Counter() ; Counter[] b = {
More informationArrays. Outline 1/7/2011. Arrays. Arrays are objects that help us organize large amounts of information. Chapter 7 focuses on:
Arrays Arrays Arrays are objects that help us organize large amounts of information Chapter 7 focuses on: array declaration and use bounds checking and capacity arrays that store object references variable
More informationReview: Classes and Object Instances. Review: Creating an Object. Using Multiple Objects. DrawingGizmo pencil; pencil = new DrawingGizmo();
Review: Classes and Object Instances ; = new (); Class #05: Objects, Memory, & Program Traces Software Engineering I (CS 120): M. Allen, 12/13 Sept. 17 We are working with both a class () and an object
More informationUnit 10: Sorting/Searching/Recursion
Unit 10: Sorting/Searching/Recursion Exercises 1. If you search for the value 30 using a linear search, which indices of the 2. If you search for the value -18 using a binary search, which indices of the
More informationCS Week 14. Jim Williams, PhD
CS 200 - Week 14 Jim Williams, PhD This Week 1. Final Exam: Conflict Alternatives Emailed 2. Team Lab: Object Oriented Space Game 3. BP2 Milestone 3: Strategy 4. Lecture: More Classes and Additional Topics
More information1/ COP 3503 FALL 2012 SHAYAN JAVED LECTURE 16. Programming Fundamentals using Java
1/ 137 1 COP 3503 FALL 2012 SHAYAN JAVED LECTURE 16 Programming Fundamentals using Java 2/ 137 Sorting Another crucial problem. Used everywhere: Sorting numbers (prices/grades/ratings/etc..) Names Dates
More informationObject Oriented Programming. Java-Lecture 6 - Arrays
Object Oriented Programming Java-Lecture 6 - Arrays Arrays Arrays are data structures consisting of related data items of the same type In Java arrays are objects -> they are considered reference types
More informationHST 952. Computing for Biomedical Scientists Lecture 5
Harvard-MIT Division of Health Sciences and Technology HST.952: Computing for Biomedical Scientists HST 952 Computing for Biomedical Scientists Lecture 5 Outline Recursion and iteration Imperative and
More informationCrash Course in Java. Why Java? Java notes for C++ programmers. Network Programming in Java is very different than in C/C++
Crash Course in Java Netprog: Java Intro 1 Why Java? Network Programming in Java is very different than in C/C++ much more language support error handling no pointers! (garbage collection) Threads are
More informationIntroduction to Object-Oriented Programming
Introduction to Object-Oriented Programming Arrays, Part 1 of 2 Christopher Simpkins chris.simpkins@gatech.edu CS 1331 (Georgia Tech) Arrays, Part 1 of 2 1 / 14 Modeling Aggregates As you ve seen, you
More informationLecture 18: Lists II. CS1068+ Introductory Programming in Python. Dr Kieran T. Herley 2018/19. Department of Computer Science University College Cork
Lecture 18: Lists II CS1068+ Introductory Programming in Python Dr Kieran T. Herley 2018/19 Department of Computer Science University College Cork Summary More on Python s lists. Sorting and reversing.
More informationCMSC 330: Organization of Programming Languages. Functional Programming with Lists
CMSC 330: Organization of Programming Languages Functional Programming with Lists CMSC330 Spring 2018 1 Lists in OCaml The basic data structure in OCaml Lists can be of arbitrary length Implemented as
More informationCSCI 135 Exam #2 Fundamentals of Computer Science I Fall 2013
CSCI 135 Exam #2 Fundamentals of Computer Science I Fall 2013 Name: This exam consists of 6 problems on the following 6 pages. You may use your two-sided hand-written 8 ½ x 11 note sheet during the exam.
More informationLecture 8: Iterators and More Mutation
Integrated Introduction to Computer Science Fisler, Nelson Contents 1 Traversing Lists 1 2 Motivating Iterators 2 3 Writing an Iterator 3 4 Writing Sum with an Iterator 4 Objectives By the end of this
More informationLecture 13 & 14. Single Dimensional Arrays. Dr. Martin O Connor CA166
Lecture 13 & 14 Single Dimensional Arrays Dr. Martin O Connor CA166 www.computing.dcu.ie/~moconnor Table of Contents Declaring and Instantiating Arrays Accessing Array Elements Writing Methods that Process
More informationLecture 11: Recursion (hard)
Lecture 11: Recursion (hard) Recap/finish: stutter an integer 348 > 334488 We added the base case So how do we deal with larger numbers how can we split them up? We need to split into smaller chunks Since
More informationCOMP-202: Foundations of Programming. Lecture 7: Strings and Methods Jackie Cheung, Winter 2015
COMP-202: Foundations of Programming Lecture 7: Strings and Methods Jackie Cheung, Winter 2015 Announcements Quiz 2 due tonight at 11:59pm New grades policy: lowest quiz mark dropped Assignment 2 due in
More information