Feature #4: Compress File
Implementing the "Compress File" feature for our "Operating System" project.
We'll cover the following
Description
We have to come up with a compression strategy for text files that store our system’s information. Here is our strategy: whenever we see a word in a file composed as a concatenation of other smaller words in the same file, we will encode it with the smaller words’ IDs. For example, if we have the words n
, cat
, cats
, dog
, and catsndog
in a text file. The word catsndog
is the concatenation of the words n
, cats
, and dog
, so we can assign it an ID.
This way, instead of storing the entire catsndog
word as is, we are storing an ID that takes much less space.
We’ll be provided a list of strings representing all the words from a text file. Our task will be to identify and isolate all the concatenated words.
Level up your interview prep. Join Educative to access 80+ hands-on prep courses.