There's an undocumented function System`TRootsDump`GuessRealRoots
that finds pretty good initial points for FindRoot
to polish up:
Reduce`AnalyticRootIsolation; (* initialization *)
With[{f = Function[t, -t^2 + Abs[-1 + t] + Abs[3 - t^2] - 3 Sin[t]]},
FindRoot[f, {#}] & /@ System`TRootsDump`GuessRealRoots[f, {-4, 4}]
]
(* {{0.762901}, {3.35745}, {-3.77452}} *)
Here's another way to get the starting points:
rootapprox = Plot[(Abs[3 - t^2] + Abs[t - 1] - t^2) - (3*Sin[t]), {t, -3.8, 4.6},
MeshFunctions -> {#2 &}, Mesh -> {{0}}, MeshStyle -> {Red}, PlotStyle -> None];
Cases[Normal@rootapprox, Point[{x_, _}] :> x, Infinity]
(* {0.761897, 3.35785, -3.77457} *)