Tie the importance of searching and sorting to internet search engines, then encourage students to create search mechanisms for data they want to analyze.

  • This is an incredibly open-ended problem, which works out well because students are relatively independent thinkers by the time you get to searching and sorting in an AP CS A curriculum.
  • Have students to bring in some data that can be searched and sorted.
    • Students will bring in all sorts of things, from sports statistics, to financial information, to an eBook, etc.
  • To help start with this assignment, have them consider how you would find stuff whatever database structure they’re planning on using?
    • Typically this involves finding things in a file or in an ArrayList.
  • For the assignment, ask students to come up with two or three different ways to search.
    • They’ll use some ideas from basic searches and sorts you’ve covered in class so far.
    • They will have 2-4 days to work on applying searching and sorting to their own data.
  • Challenge students:
    • Ask them to refine their search so that it is better and/or faster for their specific problem.
    • Ask them what happens if the amount of information they have increased by a factor of 100?
      • Remind them you wouldn’t want the program to take 100 times longer.
  • Because students are searching through things they’re already curious about, they work on this assignment not because it is homework but because they could actually use this.
  • This assignment could be one of the first times that students see a direct correlation between what they are doing in school and what they could do in the future.