This answer is prompted by user f'' who gave a hint:
Try converting to binary.
So I did...
1
1
2
10
5
101
10
1010
21
10101
42
101010
85
1010101
The pattern becomes obvious at this point:
The sequence is a binary number n digits long starting with a 1 and alternating 1s and 0s (then converted back to decimal, of course).
This means the answer is:
10101010 which is 170 in decimal.
And to link it to the previous answers:
Double if it is odd and double+1 if it is even works because when it is odd that means the last digit in binary is a 1. So to continue the sequence we must add a zero to the end. This is equivalent to multiplying by 2. When it is even we need to add a 1 on the end. We know that adding a 0 on the end is multiplying by 2 so adding a 1 on the end is multiplying by 2 and adding 1.
and
My other answer of $f(n)=2^n+f(n−2)$ works by considering the power expansion of a binary number. For any given member of the sequence you can make the element two further on by adding a new power of 2 which is 2 orders of magnitude higher than the previous highest. So if you look at $f(5) = 42 = 101010 = 2^5+2^3+2^1$ then you can add a new power of 2 to the beginning to give $2^7+2^5+2^3+2^1 = 1010101 = 85$.