Basic Stacks and Circular Queues

Note: All due dates are listed on the main page for this course.  They are NOT listed here.

Individual Post-Class Exercises

NOTE: Starting with 2017 WInter quarter BIT 143 is NOT using the NUnit framework for autograding.  If you see any mention of NUnit or tests or autograding in these exercises (or in any of the lessons that follow after this one) please ignore them AND please notify the instructor, so I can take them out.

  1. Lesson Setup

    1. Start-of-lecture Slides (Required)

    2. 'Starter' project for the lesson 03 PCEs (VS 2015)
      Please hand in only the Student_Answers.cs file and your Viewing Quiz or Video Outline inside of a .ZIP file

    3. Watch the online videos for this lesson and demonstrate your knowledge (Hand-In)
      You can download a .ZIP of all the videos for this lesson from Microsoft's OneDrive website by opening the folder (click this link to open the folder), then clicking on the "Folder Actions" menu, then clicking on the "Download Folder" menu item.

  2. Review: Inheritance in Object Oriented Programming

    1. OOP Inheritance (Specialization):
      (Demo Video   Example Project)

  3. ADT: Stack
    Note: The Stack, Queue, and SmartArray exercises were changed to use exception handling - let me know ASAP if there appears to be any errors.

    1. VIDEO: Stacks: ADT, Examples
          PowerPoint slides used in the video
    2. VIDEO: Stacks: API, Implementation
    3. Exercise: StackOfInts as specialized SmartArray (Hand-In)

  4. ADT: Queue
    Note: The Stack, Queue, and SmartArray exercises were changed to use exception handling - let me know ASAP if there appears to be any errors.

    1. VIDEO: Queue: API, Implementation
          PowerPoint slides used in the video
    2. Exercise: QueueOfIntegers as specialized SmartArray    (Hand-In)

    3. Exercise: Stack / Queue: Annotate with Running Time (Hand-In)

  5. Dynamic Memory Allocation
    Note: The Stack, Queue, and SmartArray exercises were changed to use exception handling - let me know ASAP if there appears to be any errors.

    1. Exercise: SmartArray: Manually resizing (Hand-In)

  6. Last Steps

    1. Hand in your work:
      Using the StudentTracker  web app  (There's a link to StudentTracker on the main page for this course)

      Please submit a .ZIP (and ONLY a .ZIP - not a .RAR, .7z, etc) that contains the Program.cs file, the video outline/viewing quiz .DOCX (or .PDF), any other files you wish to include, and leaves out every thing else (as much as possible).

      1. Remember that you can use an extension to hand in your work slightly late (see the lecture 1 slides for details).
        Once you get the feedback (the grade) from the instructor you have a limited time to email your missing work to the instructor (make sure to tell the instructor that you're using an extension). 
        You can use an extension if you forgot to hand in the entire .ZIP file, and you can  use the extension if you forgot to include an entire, specific file.  You CANNOT use an extension to revise work that you submitted and got a grade on.

        This is true as long as you have extensions left; this week is the last time that this notice will be posted

    2. Make sure that you're working on the next homework assignment.
      Details are listed on the
      homework assignment page.
      The due date is listed on the main page.
    3. Practice what you've learned
      Remember that in order to really learn this stuff you're going to need to practice it.  Go back and redo the exercises from this lesson until you've really got it down.  Go back to the prior lesson(s) and review and redo that.  Make sure that you've really got this stuff in your head (and remember that it gets easier each time you redo the work)!
In-Class Materials:

These materials are used by students in the hybrid class during leture time.  Online students can safely ignore everything in this 'In Class Materials' box.

Git

In-Class Materials:

Instructor's Materials:

  • Notes
    • These notes are for the instructor’s use, and not meant for public consumption.
      They're posted here on the off chance that you find them useful - If they help you, that’s great.  If not, please just ignore them :)
      This is the last week that this notice will be posted.

Videos recorded during class (of the In-Class Exercises):