I'm deciding to hire a freelancer to build an app from one of the following websites: GoFreelance, ODesk, Rent-a-coder, eLance.
The thing is that I don't know how much my app will cost me. I have some technical knowledge in order to evaluate how much my application is similar with others, but I don't know how to find similar projects ideas as mine and their development price.
PS: It's a smartphone (iPhone, Android) app.
In order to figure out how much it will cost, you need to know how long it will take. The amount of time a software project will take could vary from 1 day to 10 years. Even an iphone app could take that long. To estimate how long it will take, you need to have a clear functional specification. If you expect to go onto oDesk and eLance and say "I have this idea for an iphone app, can you implement it?" -- you are wasting your money.
If you aren't technical at all, I would recommend hiring someone to just write your functional specification. Using that you should be able to estimate how long your project will take and comparing to hourly rates, figure out what is reasonable (i.e. you don't want to take the lowest bid. You will get what you pay for).
Also, an android app and an iphone app are two separate projects and may take different amounts of time. For example, the Trello app on the iPhone took about 4 months of 1 developer's time to get where it is today. However, the Android port will probably only take a few weeks with two devs working on it.
Also consider if it is iterative/prototype release schedule (agile), ie the difference cost levels of multiple deliveries of v0.1 ,..., v0.9 and v1.
You may have a quite complete alpha version quickly (and cheapely) but to get it polished and complete for release cost exponentially towards the end.
As @Jim Blizard says, v1 is not the end of the development needed for this app.
I would search all the freelance sites for iphone and android app developers, check their past projects and see what they ended up being paid either total hours or for the project you should get an idea of what people are paying for apps, and you may even get to read a projects description to compare to your app.
A good freelancer or a development team will provide you with an estimate. You describe the idea and the features you want, they evaluate time and efforts, and give you the answer based on their hour rate. I'd recommend to choose developers from Eastern Europe, for example Poland or Ukraine. They are highly-professional and their hour rates are lower than in Western Europe or USA.