CS2852 Week 5, Class 2 Today Queue Applications Circular Queue Implementation Testing SE-2811 Slide...
-
Upload
daniela-lawson -
Category
Documents
-
view
213 -
download
0
description
Transcript of CS2852 Week 5, Class 2 Today Queue Applications Circular Queue Implementation Testing SE-2811 Slide...
![Page 1: CS2852 Week 5, Class 2 Today Queue Applications Circular Queue Implementation Testing SE-2811 Slide design: Dr. Mark L. Hornick Content: Dr. Hornick Errors:](https://reader036.fdocuments.us/reader036/viewer/2022082908/5a4d1b0f7f8b9ab05998e31e/html5/thumbnails/1.jpg)
CS2852Week 5, Class 2 Today
Queue Applications Circular Queue Implementation Testing
SE-2811Slide design: Dr. Mark L. Hornick
Content: Dr. HornickErrors: Dr. Yoder
1
![Page 2: CS2852 Week 5, Class 2 Today Queue Applications Circular Queue Implementation Testing SE-2811 Slide design: Dr. Mark L. Hornick Content: Dr. Hornick Errors:](https://reader036.fdocuments.us/reader036/viewer/2022082908/5a4d1b0f7f8b9ab05998e31e/html5/thumbnails/2.jpg)
Printer queue Customer queue This week’s lab (resonance simulation)
Parsing Matching parenthesis Compiling expressions
Function call stack
Queue Applications
SE-2811Dr.Yoder 2
Stack Applications
![Page 3: CS2852 Week 5, Class 2 Today Queue Applications Circular Queue Implementation Testing SE-2811 Slide design: Dr. Mark L. Hornick Content: Dr. Hornick Errors:](https://reader036.fdocuments.us/reader036/viewer/2022082908/5a4d1b0f7f8b9ab05998e31e/html5/thumbnails/3.jpg)
A queue interface (Review)
public interface Queue<E> { E poll(); void offer(E element); E peek(); boolean isEmpty();}
(Not in Java API – see code examples)SE-2811Dr.Yoder 3
![Page 4: CS2852 Week 5, Class 2 Today Queue Applications Circular Queue Implementation Testing SE-2811 Slide design: Dr. Mark L. Hornick Content: Dr. Hornick Errors:](https://reader036.fdocuments.us/reader036/viewer/2022082908/5a4d1b0f7f8b9ab05998e31e/html5/thumbnails/4.jpg)
Implementing a Queue (Review) With Java’s ArrayList:
push: add(0,E) – EXERCISE: What is the Big-O? pop: remove(n-1) – EXERCISE: Big-O? peek: [EXERCISE!] – EXERCISE: Big-O? isEmpty: isEmpty()
With Java’s LinkedList: push: add(0,E) – EXERCISE: What is the Big-O? pop: remove(n-1) – EXERCISE: Big-O? peek: [EXERCISE!] – EXERCISE: Big-O? isEmpty: isEmpty() SE-2811
Dr.Yoder 4
![Page 5: CS2852 Week 5, Class 2 Today Queue Applications Circular Queue Implementation Testing SE-2811 Slide design: Dr. Mark L. Hornick Content: Dr. Hornick Errors:](https://reader036.fdocuments.us/reader036/viewer/2022082908/5a4d1b0f7f8b9ab05998e31e/html5/thumbnails/5.jpg)
Two methods for each operation: One throws exceptions if nothing there The other returns null
Java’s Queue Interface (Review)
SE-2811Dr.Yoder 5
Throws exception
Returns special value
Insert add(e) offer(e)Remove remove() poll()Examine element() peek()
![Page 6: CS2852 Week 5, Class 2 Today Queue Applications Circular Queue Implementation Testing SE-2811 Slide design: Dr. Mark L. Hornick Content: Dr. Hornick Errors:](https://reader036.fdocuments.us/reader036/viewer/2022082908/5a4d1b0f7f8b9ab05998e31e/html5/thumbnails/6.jpg)
Implementing a Circular Queue [See code]
SE-2811Dr.Yoder 6
![Page 7: CS2852 Week 5, Class 2 Today Queue Applications Circular Queue Implementation Testing SE-2811 Slide design: Dr. Mark L. Hornick Content: Dr. Hornick Errors:](https://reader036.fdocuments.us/reader036/viewer/2022082908/5a4d1b0f7f8b9ab05998e31e/html5/thumbnails/7.jpg)
Levels of Testing Unit – e.g. Single method or class Integration – e.g. Multiple classes System – Whole program in context used Acceptance – Confirming requirements met
SE-2811Dr.Yoder 7
![Page 8: CS2852 Week 5, Class 2 Today Queue Applications Circular Queue Implementation Testing SE-2811 Slide design: Dr. Mark L. Hornick Content: Dr. Hornick Errors:](https://reader036.fdocuments.us/reader036/viewer/2022082908/5a4d1b0f7f8b9ab05998e31e/html5/thumbnails/8.jpg)
Types of Testing Black-box testing – What we have done so
far White-box testing – Code coverage, etc. Broken-box testing
SE-2811Dr.Yoder 8
![Page 9: CS2852 Week 5, Class 2 Today Queue Applications Circular Queue Implementation Testing SE-2811 Slide design: Dr. Mark L. Hornick Content: Dr. Hornick Errors:](https://reader036.fdocuments.us/reader036/viewer/2022082908/5a4d1b0f7f8b9ab05998e31e/html5/thumbnails/9.jpg)
Muddiest Point
Wait for the slides, or follow this link to answer both questions at once: http://bit.ly/1Mow5a3
SE-2811Dr.Yoder 9
![Page 10: CS2852 Week 5, Class 2 Today Queue Applications Circular Queue Implementation Testing SE-2811 Slide design: Dr. Mark L. Hornick Content: Dr. Hornick Errors:](https://reader036.fdocuments.us/reader036/viewer/2022082908/5a4d1b0f7f8b9ab05998e31e/html5/thumbnails/10.jpg)
SE-2811Dr. Josiah Yoder 10http://bit.ly/1Mow5a3
![Page 11: CS2852 Week 5, Class 2 Today Queue Applications Circular Queue Implementation Testing SE-2811 Slide design: Dr. Mark L. Hornick Content: Dr. Hornick Errors:](https://reader036.fdocuments.us/reader036/viewer/2022082908/5a4d1b0f7f8b9ab05998e31e/html5/thumbnails/11.jpg)
SE-2811Dr. Josiah Yoder 11http://bit.ly/1Mow5a3