# Arrays and Strings

String manipulation problems are in the same category as array, because string is represented as an array of characters internally. Array problems usually does not require knowledge of advanced data structures, so just basic data structures such as Hash Table and basic techniques like [Two Pointers](https://leetcode.com/articles/two-pointer-technique/) should suffice.

Google likes to test your ability to think at large scale by asking variation of problems represented in [data stream model](https://en.wikipedia.org/wiki/Streaming_algorithm#Data_stream_model). For example, instead of giving you an integer array, you are given a stream of integers and all integers are too large to be fit in memory. A great example of such problem which can be represented in data stream model is [Longest Substring with At Most K Distinct Characters](https://leetcode.com/problems/longest-substring-with-at-most-k-distinct-characters).