Coding Challenge Series / Technical Interview Series
You have a list of strings. Eliminate duplicates.
Sure, simple enough if the list is small. What if the list has thousands of entries? A simple solution simply :) won’t do.
Coding Challenge Series / Technical Interview Series
You have a list of strings. Eliminate duplicates.
Sure, simple enough if the list is small. What if the list has thousands of entries? A simple solution simply :) won’t do.
Coding Challenge Series / Technical Interview Series
Decode a HTML URL encoded string.
A URL encoded string is a series of characters, where the sequence %## is a single byte hex encoded character.
Hi%20there!
becomes
Hi there!
Do not use any standard function for hex or decoding functions that may be provided by the language or platform you choose.
Don’t forget to consider CPU/memory/object usage as part of your solution!
Coding Challenge Series / Technical Interview Series
A function you create is provided as a parameter a string of arbitrary length. This string has special characteristics though — once a character is read, it is zeroed out and is then read-only.
You may access the string’s individual characters either as an array or a function (whichever your programming language supports, for example string[#] or string.getChar(#)); no other built-in string functions may be used.
The function you create must do the following:
I’m renaming the series of interview questions to be “Coding Challenges.” Rules are still the same: you have about 30 minutes from start to finish for each question. The amount of code necessary to solve a problem is one or two whiteboards of reasonable sized handwriting (20-100 lines of code).
Create a structure best suited to efficiently storing a hierarchical file name and path system.
Now, write the code to merge two instances of the structures you have created into a single structure. There should be no duplicate file names in the single structure.
I’ve created nine technical interview questions so far as part of my ongoing series.
Just as a reminder, each question should be solvable in less than 30 minutes time (sometimes less). Some amount of coding is typically necessary to solve the problem (either actual code or pseudo-code), but occasionally, just a plan or discussion-style response is expected (although to date, they’ve all been coding questions).
Hope you’ve enjoyed the series so far. If you have any suggestions, send them my way!