There are many questions where the answer is never accepted, but there are also some questions where the answer is accepted very quickly. I understand we can't make any rules here, but this doesn't raise the quality of answers either. In these cases - even if I have some ideas, I have zero motivation to answer them (yes, partly because there are poor chances to get any rep, but there are also poor chances that the person who actually searches answer to that question will read past the first answer).
I think the time is irrelevant. If the answer fits and you are satisfied, go ahead and mark it as the answer.
The other side of this is if you see a question that has an answer marked, but you have a better one, go ahead and answer. Just because the question has an answer does not mean that it is closed. In fact, there is even a badge that promotes this idea.
I think a good rule of thumb is to wait at least a day, to give other members a chance to respond. Even if the first answer is given shortly after the question is asked, there's nothing wrong with waiting for any other input that may be coming. The upper end of the range should b e a week, again, to give the community time to add responses.
A day or two is par (I seem to remember you cannot accept your own answer until the question is two days old, so that's a good enough precedent for me)
Don't forget that answers can be accepted days after they were added; so whilst the answer on that question was added 3 minutes after the question, it was "most likely" accepted later (the actual time isn't shown).