This is the the Android MarketPlace policy about these situations.
Your application purchases are tied to your Google Account and can be installed an unlimited amount of times on any device. So, for example, if you remove 'My Favorite Game' to save memory, you can reinstall it at a later date with no charge by simply visiting My Downloads. Note: free applications are not saved to My Downloads after you remove them.
If you change devices, you can install previous purchases by making sure you sign into your device with the same Google Account you used on your previous phone.
Additionally, if Android Market is attempting to charge you for an application you have already purchased on an existing phone, your device may have been reset and a new username and password created. Because the application is associated with a different Google Account, you are being charged to purchase it again. Please note, if you would like to continue using the device with your current Google Account, you will need to purchase the application again.