Time to wrap up sorting for a while. We just finished quicksort having gone through a series of lessons We started with Quickselect. Then we did a quicksort, copying to new arrays during the partition Then finally to an in place quicksort. For the final quicksort we used a partition algorithm pretty much the same as the one described here. We started testing using by building a randomly filled array like this: Random rnd = new Random(); int a[] = new int[n]; for (int i=0;i<n;i++) { a[i] = rnd.
# COMMENTSWhen I first saw the quicksort it was in an algorithms class back in the day. We first learned the quicksort, then choosing a good pivot element and then as an afterthought we did quickselect. Fast forward to teaching. I was never really happy teaching quicksort. Mergesort is easy to motivate and it's pretty easy to write. Quicksort always felt a little forced. I thought I'd try switching things up this time and doing quickselect first.
# COMMENTSPlus ça change, plus c'est la même chose The more things change, the more they stay the same. Last week we heard all about the new SAT. Going back to 1600 points, writing optional, and reworking the verbal section. Immediate responses ranged from the usual fact that SAT doesn't correlate with college success to the idea that the motive was not to improve the test but rather to recapture market share from the ACT.
# COMMENTSCrystal Furman wrote a nice post titled Coding Comprehension about a week ago. There was a little buzz about it in the APCS Facebook group and shortly after, Alfred Thompson added his two cents. I thought I'd add mine, at least a couple of thoughts. There are a lot of issues - long term retention, transfer of knowledge from the basics to more advanced tools, pattern recognition, and more.
# COMMENTSI like a fairly informal atmosphere in my classes. Students have to know that there’s a line between teacher and student but I also want them to feel like we’re all part of the Stuy CS family.
Whenever we start a new term, it takes a while to break down the walls. The students don’t know what to expect of me, can they trust me? Am I a bozo? Who knows.
# COMMENTSPatient: “Doctor, it hurts when I do this.”
Doctor: “So, don’t do that.”
We’ve been spending time on State Space Search. It’s a great topic. We deal with or at least introduce:
Recursion Blind search Heuristic search foreshadowing things like A* and Dijkstra’s algorithm. and more. Today, however. I want to talk about something else.
We started by developing a maze solver. It reads a text file representing the maze and then proceeds to find an exit.
# COMMENTSWe’re ramping up for recursion in my junior classes - state space search, nlg(n) sorts, etc. As a refresher, we took a quick look at the Fibonacci numbers.
Now, some people seem to think that it’s a tired problem. It’s mathy, it’s played out, it’s boring etc.. They just might be missing the point.
The beauty isn’t in the problem itself, but rather, that it’s a platform on which you can look at many problem solving techniques.
# COMMENTSI think my one regret over the years is that I haven’t done much travel. So, when I had the opportunity to go to the 2014 Tapia conference, I jumped at the chance. I didn’t get to see too much of Seattle, but that’s OK. Now I’ve more incentive to go back.
In addition to seeing new sites, it also gave me an opportunity to see friends that I don’t get to see too often.
# COMMENTSSpent the past few days at the Tapia Conference in Seattle.
The Tapia conference is billed as a “Celebration of Diversity in Computing.” The bulk of the attendees seemed to be students. Undergrads and grads. The undergrads were mostly juniors and seniors, but a bunch of freshmen and sophomores were there as well. Of course there were faculty members to join them as well as people from industry.
What was I doing there?
# COMMENTSA few weeks ago, I noticed this Twitter conversation between Alfred Thompson and Steve Keinath
I briefly considered proposing a session for the conference but it was just a day or two before the deadline, I don’t know if I’m going to be able to attend the conference, and besides, who said anything I proposed would be accepted.
Still, I liked the idea - I’ve been an educator for 23 years, a Linux user for most of that time and an Unix user for longer.
# COMMENTS