Yes, this is better. In fact, there is an algorithm to find reachable states on p. 93 of "Elements of the Theory of Computation" by Lewis and Papdimitriou (2nd ed.). If we modify it a little, we get the following.

Code:

if s is in A then output "yes" and stop
R := {s}
while there is a state p in R, x in {a, b} and a state q such that t(p,x,q) and q is not in R do
if q is in A then output "yes" and stop
add q to R
end while
output "no"

Here R stands for the (gradually built) set of states reachable from s.