Presentation is loading. Please wait.

Presentation is loading. Please wait.

Array Review Selection Sort

Similar presentations


Presentation on theme: "Array Review Selection Sort"— Presentation transcript:

1 Array Review Selection Sort
Get out your notes. Array Review Selection Sort

2 Learning Objectives Be able to dry run programs that use arrays
Understand and be able to implement a Selection Sort.

3 Dry run 1 int[] egArray = { 2, 4, 6, 8, 10, 1, 3, 5, 7, 9 }; for ( int index= 0 ; index < 5 ; index++ ) System.out.print( egArray[ index ] + " " );

4 Dry Run 2 int[] egArray = { 2, 4, 6, 8, 10, 1, 3, 5, 7, 9 }; for ( int index= 0 ; index < egArray.length ; index++ ) System.out.print( egArray[ index ] + " " );

5 Dry Run 3 int[] egArray = { 2, 4, 6, 8, 10, 1, 3, 5, 7, 9 }; for ( int index= 0 ; index < egArray.length ; index = index + 2 ) System.out.print( egArray[ index ] + " " );

6 #4) Modify the code int[] egArray = { 2, 4, 6, 8, 10, 1, 3, 5, 7, 9 };
Fill in the blanks of the following code fragment so that the elements of the array are printed  in reverse order, starting with the last element. int[] egArray = { 2, 4, 6, 8, 10, 1, 3, 5, 7, 9 }; for ( int index= ________ ; _____________ ; ______________ ) System.out.print( egArray[ index ] + " " )

7 Dry Run 5 int[] array = { 1, 4, 3, 6, 8, 2, 5}; int what = array[0]; // scan the array for ( int index=0; index < array.length; index++ ) { if ( array[ index ] > what ) what = array[ index ]; } System.out.println( what );

8 Dry Run 6 int[] array = { 1, 4, 3, 6, 8, 2, 5}; int what = array[0]; // scan the array for ( int index=0; index < array.length; index++ ) { if ( array[ index ] < what ) what = array[ index ]; } System.out.println( what );

9 Dry Run 7 int[] array = { 1, 4, 3, 6 }; int what = 0; // scan the array for ( int index=0; index < array.length; index++ ) { what = what + array[ index ] ; } System.out.println( what );

10 8) Fill in the blank in the following code fragment so that each element of the array is assigned twice the value of its index. int[] array = new int[10]; // scan the array for ( int index=0; index < array.length; index++ ) { _______________________ }

11 Dry Run 9 int [] list = { 10, 11, 4, 8, 2 } ; for(int start = 1; start < list.length; start++) { int temp = list[start]; int k = start; while(k > 0 && list[k-1] > temp) list[k] = list[k-1]; k--; } list[k] = temp; for (int s:list) System.out.print(s +" "); System.out.println();

12 Dry Run 10 public static void main (String [] args) {
int [] a = { 10, 11, 4, 8, 2 } ; int out, in, min; int dummy; for (out=0; out<a.length-1; out++) min = out; for(in=out+1; in<a.length; in++) if(a[in] < a[min] ) min = in; dummy = a[out]; a[out] = a[min]; a[min] = dummy; for (int s:a) System.out.print(s +" "); System.out.println(); } // end for(out) }

13 Learning Objectives Review reading a nested loop program.
Understand how the selection and insertion sorts work Write a program that uses the selection and insertion sorts.

14 What did the previous Code do?

15 Selection sort How it works Example Low High 2 6 8 3 15 1 7 Stability
Stability Speed Your turn High Low Check, mark, switch Not stable O(n2)

16 Selection Sort //a is the array name,
// nElems = the number of elements being sorted int out, in, min; int dummy; // If sorting an array of ints for(out=0; out<nElems-1; out++) // outer loop { min = out; // minimum for(in=out+1; in<nElems; in++) // inner loop if(a[in] < a[min] ) // Check if min greater, min = in; // Mark, we have a new min dummy = a[out]; //Switch a[out] = a[min]; a[min] = dummy; } // end for(out)

17 First Program Check for Understanding
import java.util.Scanner; // program uses class Scanner public class SelectionSort { public static void main(String args[]) String[] names = new String[5]; String name; // create Scanner to obtain input from command window Scanner input = new Scanner( System.in ); for (int count = 0 ; count < names.length; count++) System.out.println("Please enter a name"); names[count] = input.next(); } for (int j=0; j<names.length; j++) System.out.println(names[j]); //Insert Sort Code here System.out.println("The names ..."); for (String temp: names) // For each String temp in the array names. System.out.println(temp); First Program Check for Understanding Enter this into BlueJ and test to make sure it is sorting.

18 Selection Sort Program
Input 11 scores in main body Output: Numbers in sorted order (Low to High): Method Mean (average): Method Median (Middle number after sorting): Method Push: Find the mode: The most often occurring value. Multiple modes? No mode? Let the user tell you how many scores prior to entering the scores Add a method that will return an array of the 5 highest scores. Add a method that will return the modified average. If the pre-sorted scores are in increasing order (continual improvement), it will return the average of the top 3 scores, otherwise with will return the entire average.

19 Shell for the Selection Sort program.
import java.util.Scanner; public class SortOfFun { public static void main(String [] args) } public static void selectionSort(int [] unsortedArray) public static void show(int [] arrayToShow) public static int meany(int [] theArray) public static int medianfinder(int [] theArray) Shell for the Selection Sort program.

20 APCS Test Corrections What do I do to make corrections?
Use your brain and, if necessary, chapter notes/text/notebook to find the correct answer. Write the correct answer. Write why you consider your answer to be correct, by supporting your answer Write why you got the answer wrong. This requires reflection on how you interpreted the question/answer and why you believe your misinterpreted it.

21 What will I get for making corrections?
You will get 1/2 point added to your test score for each correct, complete and convincing correction. Other benefits include reviewing information, which confused you, increasing your understanding of Computer Science, and improving your multiple choice test taking skills. (For example, if you receive a 35/55 and you correct 10 incorrect answers, you have the possibility of receiving a 40/55 on your test.)

22 How long do I have to make corrections?
You have one week after the exam is returned. Do I have to make corrections? No. You will keep your initial test score

23 What should corrections look like?
Sample Question: Colonial American taverns were all of the following except: frequented mainly by the lower classes another cradle of democracy hotbeds of agitation for the Revolutionary movement important in crystallizing public opinion places providing amusement Question #1: _A_is the correct answer. I put D because I didn’t know the term “crystallizing.” I also didn’t understand “public opinion” so I thought this must be the “exception” answer. I did not pick the correct answer because I thought only lower classes hung out in taverns back then. This time, when I looked at all the choices, I realized b, c and d are about the Revolution so the most likely choices are either a or e. When I looked up information on the role of taverns, I found out all kinds of people hung out in taverns and people played cards and sang so they had amusement.

24 Will I get credit for every correction I make?
No. Simply copying or paraphrasing the answer will not earn you any credit. You must show reasoning or reflection. Here is an example of how not to do it: Questions #1: The answer should be _A_. The “except” answer is “frequented mainly by the lower classes” because the other answers are correct.


Download ppt "Array Review Selection Sort"

Similar presentations


Ads by Google