As best as I can figure the answer to the problem is f(n) = 1+n/(n-1)*f(n-1) where f(1)=1. Keep in mind that this is far from a statistical proof. The logic behind it is that the nth city is obviously the last one picked, so you've only visited it once. That gives you the f(n)=1+(something) part. For the remaining n-1 cities you apply the recursive definition of the problem, but for each of them you expect to visit it 1/(1-1/n) times, that being the geometric series of (1/n). 1/(1-1/n)=n/(n-1), so that makes the (something) part of the last equation to be n/(n-1)*f(n-1).
I verified it with a simple simulation and some tables in excel.
Edit: Oops, looking back at this I made a mistake. I assumed that you could visit the city you are currntly in, which is wrong.