diff --git a/lib/practice_exercises.rb b/lib/practice_exercises.rb index 291e4e6..9fcef1f 100644 --- a/lib/practice_exercises.rb +++ b/lib/practice_exercises.rb @@ -1,13 +1,47 @@ -# Time Complexity: ? -# Space Complexity: ? +# Time Complexity: O(n) +# Space Complexity: 0(1) def remove_duplicates(list) - raise NotImplementedError, "Not implemented yet" + i = 0 + j = 1 + until list[j] == nil + if list[i] == list[j] + list.delete_at(list[j]) + else + i+=1 + j+=1 + end + end + return list end -# Time Complexity: ? -# Space Complexity: ? +# Time Complexity: O(n^4) +# Space Complexity: 0(n) def longest_prefix(strings) - raise NotImplementedError, "Not implemented yet" + i = 1 + j = 0 + k = 0 + output = "" + characters = [] + length = strings.length + strings.each do |word| + characters << word.chars + end + + characters.each do |item| + until j == length-1 + until k == length-1 + if item[k] != characters[i][k] + return output + else + + i += 1 + end + output += item[k] + k += 1 + j += 1 + end + end + return output + end end -