Osp::Base::Collection
|
|
- Emmeline Townsend
- 5 years ago
- Views:
Transcription
1 Osp::Base::Collection
2 Contents Collections Interfaces and Enumerators Helpers Lists Maps and MultiMaps Stack and Queue 2
3 Introduction A collection means an aggregation of similar objects. The collection refers to the container rather than its contents. This namespace provides template-based and non-template based classes common data structures and their Enumerators. 3
4 1 Collections
5 Collections Collection A group/aggregation of multiple homogeneous items Provide generic APIs for common operations like access, add, delete, modify etc. Are efficient, reusable, and extensible Collections classes can be categorized into Lists: ArrayList, ArrayListT, LinkedList, LinkedListT Maps: HashMap, HashMapT Multi Maps: MultiHashMap, MultiHashMapT Stacks: Stack, StackT Queues: Queue, QueueT 5
6 2 Interfaces and Enumerators
7 Interfaces and Enumerators Interfaces Virtual classes Facilitates basic functionalities Provide reusability and extensibility Enumerators A special kind of interface supports a simple iteration over a collection Can t modify the member object of a collection Remains valid as long as the collection remains unchanged Generic APIs GetCurrent() MoveNext() Reset() 7
8 ICollection & IEnumerator ICollection Base interface of collection classes APIs GetCount() GetEnumeratorN() IEnumerator Base interface of all enumerator All concrete collection classes must be derived from this to allow iteration over its objects APIs GetCurrent() MoveNext() (returns E_OUT_OF_RANGE at its end) Reset() 8
9 IList Base interface of all concrete list classes Items are accessible by index and provides functionalities for Adding items Add(), AddItems(), InsertAt(), InsertItemsFrom() Removing items Remove() (by object), RemoveAt() (by index), RemoveAll(), RemoveItems() (by range), RemoveItems() (by another collection) Random access GetAt(), SetAt(), GetItemsN() Search IndexOf(), LastIndexOf(), Contains(), ContainsAll(), Sort (by IComparer) 9
10 IMap Key-Value pairs Adding & removing Add(), Remove() (by a key), RemoveAll() Searching ContainsKey(), ContainsValue(), GetValue() (by a key) Getting & setting GetKeysN(), GetValuesN(), GetMapEnumeratorN() SetValue() (by a key with a new value) 10
11 IMultiMap Multiple values for a key Specific functions Contains() (by a key and value pair) GetCount() (by a key), GetCount (all), GetValuesN (by a key) Remove() (by a value and key pair) SetValue() (by a value and key pair with a new value) 11
12 More Enumerators Osp::Base::Collection::IMapEnumerator GetKey() GetValue() GetCurrent() (returns MapEntry) MapEntry: a small class supports GetKey(), GetValue() & Equals() Osp::Base::Collection::IBidirectionalEnumerator MovePrevious() ResetLast() 12
13 4 Helpers
14 IHashCodeProvider Interface which implements the hash code mechanism All classes which need hash calculation should implement this interface s GetHashCode() method. 14
15 IComparer Allows a derived class to compare two objects of the same type Implements the comparison functionality of two objects Implementations are DoubleComparer FloatComparer Int8Comparer... StringComparer 15
16 5 List
17 ArrayList & LinkedList Collection of objects that can be individually accessed by an index A real class supporting IList Implemented based on array Initial capacity is 10 if not specified ArrayList specific functions SetCapacity() Do not add a stack objects into a collection Wrong: String str(l One ); list.add(str); Instead add heap based objects, String* str = new String(L One ); list.add(*str); 17
18 Example: ArrayList Operations ArrayList list; // Create the ArrayList instance list.construct(); // Construct the ArrayList with default capacity // Adding values list.add(*(new Integer(1))); // 1 list.add(*(new Integer(2))); // 1 2 // Retrieve and insert new value at index 1 Integer* i = static_cast<integer*>(list.getat(1)); list.insertat(*(new Integer(4)),1); // // Removing with value Integer* val = new Integer(1); list.remove(*val,true); // 4 2 delete val; // Removing at Index list.removeat(1,true); // 4 // Adding more values list.add(*(new Integer(1))); // 4 1 list.add(*(new Integer(3))); //
19 Example: Sorting & Enumerating // Sorting list IntegerComparer* com = new IntegerComparer(); list.sort(*com); // [1 3 4] delete com; // Enumerator example IEnumerator* enumn = list.getenumeratorn(); while( enumn->movenext() == E_SUCCESS ) { Integer* obj = (Integer*)(enumN->GetCurrent()); AppLog( "[%d]", obj->toint() ); } delete enumn; // which is the same to for( int i=0; i<list.getcount(); i++ ) { Integer* obj = (Integer*)(list.GetAt(i)); AppLog( "[%d]", obj->toint() ); } 19
20 8 Maps and MultiMaps
21 HashMap & MultiHashMap Implementation of IMap & IMultiMap Organized based on the hash code of the keys Default capacity is 16 HashMap contains unique keys and each key maps to one single value. MultiHashMap has no limit on the number of elements with the same key, but duplicated elements with the same key are not allowed. 21
22 Example: HashMap Operations HashMap map; map.construct(); // Key strings String* keyname = new String(L"Name"); String* keyage = new String(L"Age"); String* keyphone = new String(L"Phone"); // Adding Key-value pairs map.add(*keyname, *(new String("John"))); map.add(*keyage, *(new Integer(15))); map.add(*keyphone, *(new String(" "))); // Getting the value for a key Integer* age=static_cast<integer*>(map.getvalue(*keyage)); // 15 // Deleting a pair map.remove(*keyage, true); 22
23 Example: Enumeration // Enumerating IMapEnumerator* mapenum = map.getmapenumeratorn(); while (mapenum->movenext() == E_SUCCESS) { String* k =static_cast<string*> (mapenum->getkey()); String* v =static_cast<string*> (mapenum->getvalue()); AppLog( [%S]->[%S], k->getpointer(),v->getpointer()); } delete mapenum; // Deallocate all objects map.removeall(true); 23
24 9 Stack and Queue
25 Stack & Queue Conventional stacks and queues Implements ICollection Stack specific functions Push(), Pop(), Peek() (object at the top without removing) Queue specific functions Enqueue(), Dequeue(), Peek() (at the front) Note: both also supports enumerator by GetEnumerator() GetCount(), Contains(), ContainsAll(), Equals(), RemoveAll() 25
26 Summary ArrayList and LinkedList are real implementations of the IList class. Support sorting using IComparer Enumerators can be used to enumerate collection objects. HashMap is a collection type class which stores key-value pairs. Inbuilt data structures are provided for stack and queue related operations. 26
27 Practice Example Write a image slideshow application using ArrayList and Timer class. 27
CS313D: ADVANCED PROGRAMMING LANGUAGE
CS313D: ADVANCED PROGRAMMING LANGUAGE Computer Science department Lecture 7 : Collections Lecture Contents 2 Why collections? What is a collection? Non-generic collections: Array & ArrayList Stack HashTable
More informationCS313D: ADVANCED PROGRAMMING LANGUAGE
CS313D: ADVANCED PROGRAMMING LANGUAGE Computer Science department Lecture 8 : Collections Lecture Contents 2 Why collections? What is a collection? Non-generic collections: Array & ArrayList Stack HashTable
More informationCS313D: ADVANCED PROGRAMMING LANGUAGE
CS313D: ADVANCED PROGRAMMING LANGUAGE Computer Science department Lecture 8 : Collections Lecture Contents 2 Why collections? What is a collection? Non-generic collections: Array & ArrayList Stack HashTable
More informationThe Collections API. Lecture Objectives. The Collections API. Mark Allen Weiss
The Collections API Mark Allen Weiss Lecture Objectives To learn how to use the Collections package in Java 1.2. To illustrate features of Java that help (and hurt) the design of the Collections API. Tuesday,
More informationArrays, Strings and Collections
Arrays Arrays can be informally defined as a group of variables containing values of the same type and that in some way or another they are related. An array has a fixed size that is defined before the
More informationCMSC 202H. Containers and Iterators
CMSC 202H Containers and Iterators Container Definition A container is a data structure whose purpose is to hold objects. Most languages support several ways to hold objects Arrays are compiler-supported
More informationApplied object oriented programming. 4 th lecture
Applied object oriented programming 4 th lecture Today Constructors in depth Class inheritance Interfaces Standard.NET interfaces IComparable IComparer IEquatable IEnumerable ICloneable (and cloning) Kahoot
More informationCMSC 202. Containers
CMSC 202 Containers Container Definition A container is a data structure whose purpose is to hold objects. Most languages support several ways to hold objects. Arrays are compiler-supported containers.
More informationInterfaces & Generics
Interfaces & Generics CSC207 Winter 2018 The Programming Interface The "user" for almost all code is a programmer. That user wants to know:... what kinds of object your class represents... what actions
More informationAnnouncements/Follow-ups
Announcements/Follow-ups Midterm 2 graded Average was 52/80 (63%), Std. Dev. was 12 P5 and Lab8 P5 due tomorrow Very light Lab8 Practice with collections Due at end of lab period P6 posted tomorrow Due
More informationEPITA Première Année Cycle Ingénieur. Atelier Java - J2
EPITA Première Année Cycle Ingénieur marwan.burelle@lse.epita.fr http://www.lse.epita.fr Plan 1 2 A Solution: Relation to ML Polymorphism 3 What are Collections Collection Core Interface Specific Collection
More informationCS2110: Software Development Methods. Maps and Sets in Java
CS2110: Software Development Methods Maps and Sets in Java These slides are to help with the lab, Finding Your Way with Maps Today s lab uses Maps (and Sets but just a little). Readings from textbook:
More informationClasses. System. class String // alias for string
Classes System class String // alias for string Length char this [] operator string + (string, string) operator == (string, string) operator!= (string, string) static string Empty static Compare (string,
More informationCS 206 Introduction to Computer Science II
CS 206 Introduction to Computer Science II 03 / 31 / 2017 Instructor: Michael Eckmann Today s Topics Questions? Comments? finish RadixSort implementation some applications of stack Priority Queues Michael
More informationCS61B Lecture #17. Last modified: Mon Oct 1 13:40: CS61B: Lecture #17 1
CS61B Lecture #17 Last modified: Mon Oct 1 13:40:29 2018 CS61B: Lecture #17 1 Topics Overview of standard Java Collections classes Iterators, ListIterators Containers and maps in the abstract Amortized
More informationOverview of Java ArrayList, HashTable, HashMap, Hashet,LinkedList
Overview of Java ArrayList, HashTable, HashMap, Hashet,LinkedList This article discusses the main classes of Java Collection API. The following figure demonstrates the Java Collection framework. Figure
More informationCOURSE 4 PROGRAMMING III OOP. JAVA LANGUAGE
COURSE 4 PROGRAMMING III OOP. JAVA LANGUAGE PREVIOUS COURSE CONTENT Inheritance Abstract classes Interfaces instanceof operator Nested classes Enumerations COUSE CONTENT Collections List Map Set Aggregate
More informationCS-141 Exam 2 Review November 10, 2017 Presented by the RIT Computer Science Community
CS-141 Exam 2 Review November 10, 2017 Presented by the RIT Computer Science Community http://csc.cs.rit.edu Linked Lists 1. You are given the linked sequence: 1 2 3. You may assume that each node has
More information(f) Given what we know about linked lists and arrays, when would we choose to use one data structure over the other?
CSM B Hashing & Heaps Spring 0 Week 0: March 0, 0 Motivation. (a) In the worst case, how long does it take to index into a linked list? Θ(N) (b) In the worst case, how long does it take to index into an
More informationCS61BL Summer 2013 Midterm 2
CS61BL Summer 2013 Midterm 2 Sample Solutions + Common Mistakes Question 0: Each of the following cost you.5 on this problem: you earned some credit on a problem and did not put your five digit on the
More informationMultiple Choice: 2 pts each CS-3020 Exam #3 (CH16-CH21) FORM: EX03:P
Multiple Choice: 2 pts each CS-3020 Exam #3 (CH16-CH21) FORM: EX03:P Choose the BEST answer of those given and enter your choice on the Answer Sheet. You may choose multiple options, but the point value
More informationCE204 Data Structures and Algorithms Part 2
CE204 Data Structures and Algorithms Part 2 14/01/2018 CE204 Part 2 1 Abstract Data Types 1 An abstract data type is a type that may be specified completely without the use of any programming language.
More informationComputer Science First Exams Pseudocode Standard Data Structures Examples of Pseudocode
Computer Science First Exams 2014 Pseudocode Standard Data Structures Examples of Pseudocode Candidates are NOT permitted to bring copies of this document to their examinations. 1 Introduction The purpose
More informationCollections. Enumeration.
7 Collections The.NET Framework provides a standard set of types for storing and managing collections of objects. These include resizable lists, linked lists, sorted and unsorted dictionaries as well as
More informationClass 32: The Java Collections Framework
Introduction to Computation and Problem Solving Class 32: The Java Collections Framework Prof. Steven R. Lerman and Dr. V. Judson Harward Goals To introduce you to the data structure classes that come
More information10 Java Collections; Equality, JUnit
10 Java Collections; Equality, JUnit Activities 1. Familiarize yourself with some of the Java Collections Framework. 2. Learn the basics of overriding the hashcode and equals methods. 3. Learn the basics
More informationCS2110: Software Development Methods. Maps and Sets in Java
CS2110: Software Development Methods Maps and Sets in Java These slides are to help with the lab, Finding Your Way with Maps This lab uses Maps, and Sets too (but just a little). Readings from textbook:
More informationCollections Questions
Collections Questions https://www.journaldev.com/1330/java-collections-interview-questions-and-answers https://www.baeldung.com/java-collections-interview-questions https://www.javatpoint.com/java-collections-interview-questions
More informationComputing is about Data Processing (or "number crunching") Object Oriented Programming is about Cooperating Objects
Computing is about Data Processing (or "number crunching") Object Oriented Programming is about Cooperating Objects C# is fully object-oriented: Everything is an Object: Simple Types, User-Defined Types,
More informationINFO1x05 Tutorial 6. Exercise 1: Heaps and Priority Queues
INFO1x05 Tutorial 6 Heaps and Priority Queues Exercise 1: 1. How long would it take to remove the log n smallest elements from a heap that contains n entries, using the operation? 2. Suppose you label
More informationCS 455 Midterm 2 Fall 2017 [Bono] Nov. 7, 2017
Name: USC NetID (e.g., ttrojan): CS 455 Midterm 2 Fall 2017 [Bono] Nov. 7, 2017 There are 6 problems on the exam, with 62 points total available. There are 10 pages to the exam (5 pages double-sided),
More informationJava Collections Framework reloaded
Java Collections Framework reloaded October 1, 2004 Java Collections - 2004-10-01 p. 1/23 Outline Interfaces Implementations Ordering Java 1.5 Java Collections - 2004-10-01 p. 2/23 Components Interfaces:
More informationData Structures and Algorithms Notes
Data Structures and Algorithms Notes Notes by Winst Course taught by Dr. G. R. Baliga 256-400 ext. 3890 baliga@rowan.edu Course started: September 4, 2012 Last generated: December 18, 2013 Interfaces -
More informationContents. Osp::Base::Object Osp::Base::String Osp::Base::Buffer Osp::Base::DateTime
Osp::Base Contents Osp::Base::Object Osp::Base::String Osp::Base::Buffer Osp::Base::DateTime Intorduction The Base namespace contains classes and interfaces around which the entire bada is built. All bada
More information182 review 1. Course Goals
Course Goals 182 review 1 More experience solving problems w/ algorithms and programs minimize static methods use: main( ) use and overload constructors multiple class designs and programming solutions
More informationBasic Data Structures
Basic Data Structures Some Java Preliminaries Generics (aka parametrized types) is a Java mechanism that enables the implementation of collection ADTs that can store any type of data Stack s1
More informationSummer Final Exam Review Session August 5, 2009
15-111 Summer 2 2009 Final Exam Review Session August 5, 2009 Exam Notes The exam is from 10:30 to 1:30 PM in Wean Hall 5419A. The exam will be primarily conceptual. The major emphasis is on understanding
More information9 A Preview of.net 2.0
473 9 A Preview of.net 2.0 Microsoft.NET is an evolving system that is continuously improved and extended. In late 2003 Microsoft announced.net 2.0 (codename Whidbey) as a major new version of.net; a beta
More informationFamily Name:... Other Names:... ID Number:... Signature... Model Solutions. COMP 103: Test 1. 9th August, 2013
Family Name:............................. Other Names:............................. ID Number:............................... Signature.................................. Model Solutions COMP 103: Test
More informationCSC 1351: Final. The code compiles, but when it runs it throws a ArrayIndexOutOfBoundsException
VERSION A CSC 1351: Final Name: 1 Interfaces, Classes and Inheritance 2 Basic Data Types (arrays, lists, stacks, queues, trees,...) 2.1 Does the following code compile? If it does not, how can it be fixed?
More informationArrays organize each data element as sequential memory cells each accessed by an index. data data data data data data data data
1 JAVA PROGRAMMERS GUIDE LESSON 1 File: JGuiGuideL1.doc Date Started: July 10, 2000 Last Update: Jan 2, 2002 Status: proof DICTIONARIES, MAPS AND COLLECTIONS We have classes for Sets, Lists and Maps and
More informationQuestions and Answers. Q.3) asses is not part of Java's collection framework?explanation:
Q.1) $ javac vector.java $ java vector 4 A. [3, 2, 6] B. [3, 2, 8] C. [3, 2, 6, 8] D. [3, 2, 8, 6] ANSWER : [3, 2, 8, 6] $ javac vector.java $ java vector [3, 2, 8, 6] Q.2) Which interface does java.util.hashtable
More informationLinear Structures. Linear Structure. Implementations. Array details. List details. Operations 4/18/2013
Linear Structure Linear Structures Chapter 4 CPTR 318 Every non-empty linear structure has A unique element called first A unique element called last Every element except last has a unique successor Every
More informationCMSC 132: Object-Oriented Programming II. Stack and Queue
CMSC 132: Object-Oriented Programming II Stack and Queue 1 Stack Allows access to only the last item inserted. An item is inserted or removed from the stack from one end called the top of the stack. This
More informationBasic Data Structures 1 / 24
Basic Data Structures 1 / 24 Outline 1 Some Java Preliminaries 2 Linked Lists 3 Bags 4 Queues 5 Stacks 6 Performance Characteristics 2 / 24 Some Java Preliminaries Generics (aka parametrized types) is
More informationCSC 321: Data Structures. Fall 2012
CSC 321: Data Structures Fall 2012 Lists, stacks & queues Collection classes: List (ArrayList, LinkedList), Set (TreeSet, HashSet), Map (TreeMap, HashMap) ArrayList performance and implementation LinkedList
More informationObject Oriented Programming and Design in Java. Session 19 Instructor: Bert Huang
Object Oriented Programming and Design in Java Session 19 Instructor: Bert Huang Announcements Homework 4 due MONDAY. Apr. 19 No multithreading in programming part Review Deadlocks and the Dining Philosophers
More informationSOLUTIONS (INCOMPLETE, UNCHECKED)
UNIVERSITY OF WATERLOO DEPARTMENT OF ELECTRICAL AND COMPUTER ENGINEERING E&CE 250 ALGORITHMS AND DATA STRUCTURES Midterm Examination Instructor: R.E.Seviora 1.5 hrs, Oct 27, 2000 SOLUTIONS (INCOMPLETE,
More information6: Arrays and Collections
6: Arrays and Collections Andrew Cumming, SoC Bill Buchanan, SoC W.Buchanan (1) Course Outline Day 1: Morning Introduction to Object-Orientation, Introduction to.net, Overview of.net Framework,.NET Components.
More informationLinear Structures. Linear Structure. Implementations. Array details. List details. Operations 2/10/2013
Linear Structure Linear Structures Chapter 4 CPTR 318 Every non-empty linear structure has A unique element called first A unique element called last Every element except last has a unique successor Every
More informationCS61B Lecture #17. Administrative: Need alternative test time? Make sure you send me mail.
Administrative: CS61B Lecture #17 Need alternative test time? Make sure you send me mail. Last modified: Fri Oct 18 14:48:51 2013 CS61B: Lecture #17 1 Topics Overview of standard Java Collections classes.
More informationAbstract data types (again) Announcements. Example ADT an integer bag (next) The Java Collections Framework
Announcements Abstract data types (again) PS 5 ready Tutoring schedule updated with more hours Today s topic: The Java Collections Framework Reading: Section 7.5 An ADT is a model of a collection of data
More informationCONTAİNERS COLLECTİONS
CONTAİNERS Some programs create too many objects and deal with them. In such a program, it is not feasible to declare a separate variable to hold reference to each of these objects. The proper way of keeping
More informationCSC 1214: Object-Oriented Programming
CSC 1214: Object-Oriented Programming J. Kizito Makerere University e-mail: jkizito@cis.mak.ac.ug www: http://serval.ug/~jona materials: http://serval.ug/~jona/materials/csc1214 e-learning environment:
More informationCOP 3502 (Computer Science I) Test #3: Data Structures Date: 11/1/2013 VERSION A
COP 3502 (Computer Science I) Test #3: Data Structures Date: 11/1/2013 VERSION A Directions: This is a multiple choice test. Each question is worth 5 points. Please choose the most accurate answer listed.
More informationCS 455 Midterm Exam 2 Fall 2015 [Bono] Nov. 10, 2015
Name: USC NetID (e.g., ttrojan): CS 455 Midterm Exam 2 Fall 2015 [Bono] Nov. 10, 2015 There are 9 problems on the exam, with 54 points total available. There are 8 pages to the exam (4 pages double-sided),
More information6: Arrays and Collections
6: Arrays and Collections Andrew Cumming, SoC Bill Buchanan, SoC W.Buchanan (1) Course Outline Day 1: Morning Introduction to Object-Orientation, Introduction to.net, Overview of.net Framework,.NET Components.
More informationTopics. CS61B Lecture #17. Collection Structures in java.util. Data Types in the Abstract
CS61B Lecture #17 Topics Administrative: Need alternative test time? Make sure you send me mail. Overview of standard Java Collections classes. Iterators, ListIterators Containers and maps in the abstract
More informationUNIVERSITY OF WATERLOO DEPARTMENT OF ELECTRICAL AND COMPUTER ENGINEERING E&CE 250 ALGORITHMS AND DATA STRUCTURES
UNIVERSITY OF WATERLOO DEPARTMENT OF ELECTRICAL AND COMPUTER ENGINEERING E&CE 250 ALGORITHMS AND DATA STRUCTURES Midterm Examination Douglas Wilhelm Harder 1.5 hrs, 2005/02/17 11 pages Name (last, first):
More informationEXAMINATIONS 2006 SUMMER TRIMESTER. COMP103 Introduction to Data Structures and Algorithms
T E W H A R E W Ā N A N G A O T E Ū P O K O O T E I K A A M Ā U I ÎÍÏ V I C T O R I A UNIVERSITY OF WELLINGTON EXAMINATIONS 2006 SUMMER TRIMESTER COMP103 Introduction to Data Structures and Algorithms
More informationAbstract vs concrete data structures HEAPS AND PRIORITY QUEUES. Abstract vs concrete data structures. Concrete Data Types. Concrete data structures
10/1/17 Abstract vs concrete data structures 2 Abstract data structures are interfaces they specify only interface (method names and specs) not implementation (method bodies, fields, ) HEAPS AND PRIORITY
More informationCSC 172 Data Structures and Algorithms. Fall 2017 TuTh 3:25 pm 4:40 pm Aug 30- Dec 22 Hoyt Auditorium
CSC 172 Data Structures and Algorithms Fall 2017 TuTh 3:25 pm 4:40 pm Aug 30- Dec 22 Hoyt Auditorium Announcement Project 3 is out Due: 11/21/2017 Quiz: Whatever we have covered last Thursday From Now
More informationLe L c e t c ur u e e 8 To T p o i p c i s c t o o b e b e co c v o e v r e ed e Collections
Course Name: Advanced Java Lecture 8 Topics to be covered Collections Introduction A collection, sometimes called a container, is simply an object that groups multiple elements into a single unit. Collections
More informationLecture 2: Implementing ADTs
Lecture 2: Implementing ADTs Data Structures and Algorithms CSE 373 SP 18 - KASEY CHAMPION 1 Warm Up Discuss with your neighbors! From last lecture: - What is an ADT? - What is a data structure? From CSE
More informationCSC 321: Data Structures. Fall 2013
CSC 321: Data Structures Fall 2013 Lists, stacks & queues Collection classes: List (ArrayList, LinkedList), Set (TreeSet, HashSet), Map (TreeMap, HashMap) ArrayList performance and implementation LinkedList
More informationSeparate Compilation and Namespaces Week Fall. Computer Programming for Engineers
Separate Compilation and Namespaces Week 07 Fall Computer Programming for Engineers Problem Multiplied palindrome number Multiplied palindrome number A number is called as a palindrome when you can read
More informationStacks and Queues. David Greenstein Monta Vista
Stacks and Queues David Greenstein Monta Vista Stack vs Queue Stacks and queues are used for temporary storage, but in different situations Stacks are Used for handling nested structures: processing directories
More informationLecture 9 Stacks & Queues
Lecture 9 Stacks & Queues 15-122: Principles of Imperative Computation (Spring 2018) Frank Pfenning, André Platzer, Rob Simmons In this lecture we introduce queues and stacks as data structures, e.g.,
More informationObject-Oriented Programming
Object-Oriented Programming 1. What is object-oriented programming (OOP)? OOP is a technique to develop logical modules, such as classes that contain properties, methods, fields, and events. An object
More informationAdvanced Programming Generics Collections
Advanced Programming Generics Collections The Context Create a data structure that stores elements: a stack, a linked list, a vector a graph, a tree, etc. What data type to use for representing the elements
More informationEXAMINATIONS 2016 TRIMESTER 2
T E W H A R E W Ā N A N G A O T E Ū P O K O O T E I K A A M Ā U I VUW VICTORIA U N I V E R S I T Y O F W E L L I N G T O N EXAMINATIONS 2016 TRIMESTER 2 COMP103 INTRODUCTION TO DATA STRUCTURES AND ALGORITHMS
More informationJava Data Structures Collections Framework BY ASIF AHMED CSI-211 (OBJECT ORIENTED PROGRAMMING)
Java Data Structures Collections Framework BY ASIF AHMED CSI-211 (OBJECT ORIENTED PROGRAMMING) What is a Data Structure? Introduction A data structure is a particular way of organizing data using one or
More informationComputer Programming II C++ (830)
DESCRIPTION This is an advanced course in computer programming/software engineering and applications. It reviews and builds on the concepts introduced in CP I. It introduces students to dynamic data structures,
More informationProgrammieren II. Polymorphism. Alexander Fraser. June 4, (Based on material from T. Bögel)
Programmieren II Polymorphism Alexander Fraser fraser@cl.uni-heidelberg.de (Based on material from T. Bögel) June 4, 2014 1 / 50 Outline 1 Recap - Collections 2 Advanced OOP: Polymorphism Polymorphism
More informationCS61BL: Data Structures & Programming Methodology Summer 2014
CS61BL: Data Structures & Programming Methodology Summer 2014 Instructor: Edwin Liao Midterm 2 July 30, 2014 Name: Student ID Number: Section Time: TA: Course Login: cs61bl-?? Person on Left: Possibly
More informationMIT AITI Lecture 18 Collections - Part 1
MIT AITI 2004 - Lecture 18 Collections - Part 1 Collections API The package java.util is often called the "Collections API" Extremely useful classes that you must understand to be a competent Java programmer
More informationSoftware 1 with Java. Recitation No. 6 (Collections)
Software 1 with Java Recitation No. 6 (Collections) Java Collections Framework Collection: a group of elements Interface Based Design: Java Collections Framework Interfaces Implementations Algorithms 2
More informationAbstract Data Types. Definitions, Implementations, and Uses
Abstract Data Types Definitions, Implementations, and Uses ADT An abstract data representation without reference to a specific implementation TABLE QUEUE STACK The primitive operations on the ADT elements
More informationDistributed Systems Recitation 1. Tamim Jabban
15-440 Distributed Systems Recitation 1 Tamim Jabban Office Hours Office 1004 Tuesday: 9:30-11:59 AM Thursday: 10:30-11:59 AM Appointment: send an e-mail Open door policy Java: Object Oriented Programming
More informationSome examples and/or figures were borrowed (with permission) from slides prepared by Prof. H. Roumani. The Collection Framework
Some examples and/or figures were borrowed (with permission) from slides prepared by Prof. H. Roumani The Collection Framework Collection: an aggregate that can hold a varying number of elements Interface:
More informationComputer Programming II Python
EXAM INFORMATION Items 32 Points 33 Prerequisites SECONDARY MATH I COMPUTER PROGRAMMING I Grade Level 10-12 Course Length ONE YEAR DESCRIPTION This is an advanced course in computer programming/software
More informationSymbol Tables 1 / 15
Symbol Tables 1 / 15 Outline 1 What is a Symbol Table? 2 API 3 Sample Clients 4 Implementations 5 Performance Characteristics 2 / 15 What is a Symbol Table? A symbol table is a data structure for key-value
More informationCMSC 341. Linked Lists, Stacks and Queues. CMSC 341 Lists, Stacks &Queues 1
CMSC 341 Linked Lists, Stacks and Queues CMSC 341 Lists, Stacks &Queues 1 Goal of the Lecture To complete iterator implementation for ArrayList Briefly talk about implementing a LinkedList Introduce special
More informationDM550 / DM857 Introduction to Programming. Peter Schneider-Kamp
DM550 / DM857 Introduction to Programming Peter Schneider-Kamp petersk@imada.sdu.dk http://imada.sdu.dk/~petersk/dm550/ http://imada.sdu.dk/~petersk/dm857/ ABSTRACT DATATYPES 2 Abstract Datatype (ADT)
More informationUka Tarsadia University MCA ( 3rd Semester)/M.Sc.(CA) (1st Semester) Course : / Visual Programming Question Bank
Unit 1 Introduction to.net Platform Q: 1 Answer in short. 1. Which three main components are available in.net framework? 2. List any two new features added in.net framework 4.0 which is not available in
More informationCourse Review. Cpt S 223 Fall 2009
Course Review Cpt S 223 Fall 2009 1 Final Exam When: Tuesday (12/15) 8-10am Where: in class Closed book, closed notes Comprehensive Material for preparation: Lecture slides & class notes Homeworks & program
More informationSOLUTIONS. COMP103 Introduction to Data Structures and Algorithms
T E W H A R E W Ā N A N G A O T E Ū P O K O O T E I K A A M Ā U I VUW V I C T O R I A UNIVERSITY OF WELLINGTON Student ID:....................... EXAMINATIONS 2011 MID YEAR COMP103 Introduction to Data
More informationLecture 2: Stacks and Queues
Lecture 2: Stacks and Queues CSE 373: Data Structures and Algorithms CSE 373 19 WI - KASEY CHAMPION 1 Warm Up 1. Grab a worksheet 2. Introduce yourself to your neighbors J 3. Discuss the answers 4. Log
More informationHEAPS & PRIORITY QUEUES
HEAPS & PRIORITY QUEUES Lecture 13 CS2110 Spring 2018 Announcements 2 A4 goes out today! Prelim 1: regrades are open a few rubrics have changed No Recitations next week (Fall Break Mon & Tue) We ll spend
More informationDM550 Introduction to Programming part 2. Jan Baumbach.
DM550 Introduction to Programming part 2 Jan Baumbach jan.baumbach@imada.sdu.dk http://www.baumbachlab.net Sorting Tree Balancing A sorted tree is balanced iff for each node holds: Math.abs(size(node.left)
More informationExamination Questions Midterm 1
CS1102s Data Structures and Algorithms 10/2/2010 Examination Questions Midterm 1 This examination question booklet has 9 pages, including this cover page, and contains 15 questions. You have 40 minutes
More informationCSCA48 Winter 2018 Week 3: Priority Queue, Linked Lists. Marzieh Ahmadzadeh, Nick Cheng University of Toronto Scarborough
CSCA48 Winter 2018 Week 3: Priority Queue, Linked Lists Marzieh Ahmadzadeh, Nick Cheng University of Toronto Scarborough Administrative Detail Term test # 1 and #2 schedule is now on course website We
More informationSection 01: Solutions
Section 01: Solutions 1. CSE 143 review 1.1. Reference semantics Quick Check 2 [0, 1] 1 [0, 1] 1 [1, 2] 0 [1, 2] 0 [0, 0] 0 [1, 2] (a) What is the output of this program? public class Mystery2 { public
More informationCS 61B Spring 2017 Guerrilla Section 3 Worksheet. 25 February 2017
Spring 2017 25 February 2017 Directions: In groups of 4-5, work on the following exercises. Do not proceed to the next exercise until everyone in your group has the answer and understands why the answer
More informationC# Adds Useful Features
C# Adds Useful Features Events and delegates are included to handle asynchronous actions (like keyboard or mouse actions). Properties allow user-defined read and write actions for fields. You can add get
More informationCS 307 Final Spring 2009
Points off 1 2 3 4 5 Total off Net Score CS 307 Final Spring 2009 Name UTEID login name Instructions: 1. Please turn off your cell phones. 2. There are 5 questions on this test. 3. You have 3 hours to
More informationReferences and Homework ABSTRACT DATA TYPES; LISTS & TREES. Abstract Data Type (ADT) 9/24/14. ADT example: Set (bunch of different values)
9// References and Homework Text: Chapters, and ABSTRACT DATA TYPES; LISTS & TREES Homework: Learn these List methods, from http://docs.oracle.com/javase/7/docs/api/java/util/list.html add, addall, contains,
More informationCSCA48 Summer 2018 Week 3: Priority Queue, Linked Lists. Marzieh Ahmadzadeh University of Toronto Scarborough
CSCA48 Summer 2018 Week 3: Priority Queue, Linked Lists Marzieh Ahmadzadeh University of Toronto Scarborough Administrative Detail All practicals are up on course website. Term test # 1 and #2 schedule
More informationDay 6. COMP1006/1406 Summer M. Jason Hinek Carleton University
Day 6 COMP1006/1406 Summer 2016 M. Jason Hinek Carleton University today s agenda assignments Assignment 3 is due on Monday a quick look back abstract classes and interfaces casting objects abstract data
More informationGenerics. IRS W-9 Form
Generics IRS W-9 Form Generics Generic class and methods. BNF notation Syntax Non-parametrized class: < class declaration > ::= "class" < identifier > ["extends" < type >] ["implements" < type list >]
More information