Search Engines usually check the URL more than once before dropping out a page from indexes.
The time you have to wait is inversely proportional to the relevance of the page. The more the page is relevant according to Google, the more the crawler visits the page. It means, a relevant page is likely to be updated/dropped from indexes very quickly.
Conversely, a page with a low relevance, such as an internal page with a few links, will take more time. It's impossible to define how much time.
About your specific case, there are two actions you can take to speed up the update.
If you changed the URL but the pages are still there, at a different URL, you should set a 301 redirect from the old page to the new one. In this way, the new page will get indexed more quickly and you'll transfer the link juice and popularity from the old to the new page.
# Example with Apache
Redirect /home http://www.demkasakti.com
If you completely removed a page and you want to drop it out from indexes, it's better if you return a 410 Gone error page instead of a 404. The main difference of this status compared to the 404, is that it explicitly tells Google "the resource is gone, it's no longer available".
You can also go to Google Webmaster Tools and submit a removal request.