Loading collection data...
Collections are a way for you to organize kata so that you can create your own training routines. Every collection you create is public and automatically sharable with other warriors. After you have added a few kata to a collection you and others can train on the kata contained within the collection.
Get started now by creating a new collection.
I had a similar first approach before moving on to my final solution. One thing that could be imporved on in this solution is to use the Java StringBuilder instead of String concatenation via the + operator, as the + operator causes the loop to actually have an O(N^2) runtime.
Hi! Thanks for the reply and feedback. You're absolutely right.
First: I really like the clean style of your implementation, but I won't upvote it. Here is why:
Better use 'source.isEmpty()' instead of 'source == ""' - if at all! I don't know what the speed improvement of this precondition is anyway, but more severe is that your implementation is buggy in some corner cases. If I pass 'new String("")' as the parameter to encode, instead of '""', the code execution gets past the precondition. See http://stackoverflow.com/questions/531779/comparing-a-string-with-the-empty-string-java for that.
Always compare Strings with equals!