-
Notifications
You must be signed in to change notification settings - Fork 43
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Assignment 1 - Selection Sort #2
Comments
Excellent initiative. I'm travelling at the moment but I'll submit a PR before the deadline. |
Thank you @phelgo! Will be waiting for your PR. |
@gmertk Awesome idea! I like people who like to teach. |
@gmertk Nice work! Me too. I just found this repo so I can't meet the deadline for assignment1. Would you still accept PR for assignment1?? |
@gmertk I just thought: |
@DominicFrei It could be nice. But I would like to have a soft deadline to keep going. Deadlines are good. It motivates you to solve one assignment every few days. @K-jpn PRs are still possible for older assignments so that everyone can comment them. Though I'm not sure if we should keep them open for all the time. |
When you ask someone to sort a list of numbers in ascending order, you will see that the common intuition will be like "Select the minimum card and put it in the first place. Select the second minimum and put it in the second place. And so on". This is called selection sort.
selectionSort
function that takes an integer array and returns it as sorted in ascending order. Don't mutate the original array (don't useinout
). Note that there is already aswap
function in the standard library. When using theswap
, you need to guard it from swapping a location with itself.Comparable
protocol.isOrderedBefore
(as in sort function of the standard library). Check what@noescape
means in Swift. Also you now use another function to do the comparison, you can remove theComparable
constraint.SequenceType
. Make your function to be an extension ofSequenceType
so that we can use it as[1, 3, 2].selectionSort(<)
and[1: "b", 2: "a"].selectionSort {$0.0 > $1.0}
.Due Date: Next Wednesday 25.11.2015
Next assignment will be about writing an insertion sort (as you guessed). Feel free to send comments 😄
The text was updated successfully, but these errors were encountered: