I think that some of the previous answers have touched upon this point, but to just give a complete explaination...
{Here $a_{n}$ represents every n-bit string that is counted by $x_{n}$}
We start thinking how can we construct $a_n$ from $a_{n-1}$, such that there are no adjacent zeroes..
When using $a_{n-1}$, we know that the $zero^{th} place$ digit can be $0$ or $1$.
And to construct $a_{n}$, we must choose from among { $0a_{n-1}$ , $1a_{n-1}$ }, where exactly those strings where $a_{n-1}$ has $0$ at the $zero^{th} place$ and from the group $0a_{n-1}$ have a repeating zero.
So we can write $x_{n} = x_{n-1} + (No. \ of \ strings \ with\ '01'\ fixed \ at \ start) $
Since, only $n-2$ bits are changing,it's as good as counting $x_{n-2}$ bit strings
$x_{n} = x_{n-1} + x_{n-2} $