CIS 22B - Notes for Thursday, 10/1

Announcements and Reminders

  • Exercise 2 is due now
  • Assignment 2 is due Tuesday
  • You may request exercise (after due date) and assignment solutions (24 hours after due date)
  • TA Zoom Session tomorrow 3 PM

Recording

Exercise 2 solution

"Name That Tune" vs Write Clear Code

Sorting

  • Bubble Sort

Algorithm

Repeatedly stepping through the list to be sorted, comparing each pair of adjacent items and swapping them if they are in the wrong order.

Reference Page

Example 1-10 - Bubble Sort

How can you make this code more efficient?

Bubble Sort Example from textbook (9th edition)

Video: Easy Programming - Beginner C++ Tutorial - The Bubble Sort  (11 minutes)

  • Selection Sort
Algorithm

Find the minimum value in the list, swap it with the value in the first position.  Repeat the steps above for the remainder of the list (starting at the second position and advancing each time).

Reference Page

Example 1-11 - Selection Sort

  • Insertion Sort

Algorithm

Each  element is inserted, one at a time, into the sorted list

Reference Page

Example 1-12 - Insertion Sort


Searching an array

Sequential search

Binary search


A binary search is a search in which the array data is repeatedly split in half until the search key is found or it is determined that the the search value is not present.  The data must be sorted on the search key.

The Game: guess a secret number between 1 and 100.

Reference page

Example 1-13 - Binary Search

Videos