.. This file is part of the OpenDSA eTextbook project. See .. http://opendsa.org for more details. .. Copyright (c) 2012-2020 by the OpenDSA Project Contributors, and .. distributed under an MIT open source license. .. avmetadata:: :author: Molly Domino Comparing and Sorting ===================== Objectives ---------- Upon completion of this module, students will be able to: * Describe concepts of ordering and sorting * Develop methods to compare primitives and Objects * Describe and develop classes which implement the Comparable interface or the Comparator interface * Describe the behavior of various sort methods including: bubble sort, selection sort, and insertion sort * Discuss the relative efficiencies of various sort methods * Implement, test, and use various sort methods and methods which support comparisons * Identify when to use the Comparable interface vs the Comparator interface .. _SortOrderIntro: Introduction to Ordering, Comparing, and Sorting [13:39] -------------------------------------------------------- .. admonition:: Follow Along and Engage Download the slides corresponding to the video. Take notes on them as you watch the video, practice drawing diagrams yourself! .. raw:: html
Video Slides 12.1.2.1-IntroOrderingAndComparing.pdf .. raw:: html
Checkpoint 1 ------------ .. avembed:: Exercises/MengBridgeCourse/CompSortCheckpoint1Summ.html ka :long_name: Checkpoint 1 .. _SortIntro: Interactive: Introduction to Sorting [12:51] -------------------------------------------- .. admonition:: Follow Along and Engage Download the slides corresponding to the video. Take notes on them as you watch the video, practice drawing diagrams yourself! .. raw:: html Video Slides 12.1.3.1-IntroToSorting.pdf .. raw:: html
Checkpoint 2 ------------ .. avembed:: Exercises/MengBridgeCourse/CompSortCheckpoint2Summ.html ka :long_name: Checkpoint 2 .. _SortSelect: Interactive: Selection Sort [12:36] ----------------------------------- .. admonition:: Follow Along and Engage Download the slides corresponding to the video. Take notes on them as you watch the video, practice drawing diagrams yourself! .. raw:: html Video Slides 12.1.4.1-SelectionSort.pdf .. raw:: html
Checkpoint 3 ------------ .. avembed:: Exercises/MengBridgeCourse/CompSortCheckpoint3Summ.html ka :long_name: Checkpoint 3 .. _SortInsert: Insertion Sort with an Array ----------------------------------------- .. admonition:: Follow Along and Engage Download the slides corresponding to the video. Take notes on them as you watch the video, practice drawing diagrams yourself! .. raw:: html Video Slides 12.1.5.1-InsertionSortArray.pdf .. raw:: html
Checkpoint 4 ------------ .. avembed:: Exercises/MengBridgeCourse/CompSortCheckpoint4Summ.html ka :long_name: Checkpoint 4 Insertion Sort with a Linked Chain [16:50] ------------------------------------------ .. admonition:: Follow Along and Engage Download the slides corresponding to the video. Take notes on them as you watch the video, practice drawing diagrams yourself! .. raw:: html Video Slides 12.1.6.1-InsertionSortLinked.pdf .. raw:: html
Checkpoint 5 ------------ .. avembed:: Exercises/MengBridgeCourse/CompSortCheckpoint5Summ.html ka :long_name: Checkpoint 5 Programming Practice: Insertion Sort ------------------------------------ .. extrtoolembed:: 'Programming Practice: Insertion Sort' :workout_id: 1925 .. _SortCompareIntro: Introduction to Comparators [11:22] ----------------------------------- .. admonition:: Follow Along, Practice and Explore In Eclipse, use the *Project > Download Assignment...* menu command to download the exercise project named "ex12.01-Comparing". Use this example to follow along with the following video. Feel free to experiment. Refer to `01.02: Lab: LightBot for Beginners `_ if you need to review the instructions for downloading Eclipse projects. .. raw:: html
Video Slides 12.1.8.1-Comparators.pdf .. raw:: html
Programming Practice: Comparators --------------------------------- .. extrtoolembed:: 'Programming Practice: Comparators' :workout_id: 1926