Short Answer: Yes, a single trainer can win a 3-star raid but they need to have decently strong Pokemon. 5-star and mega raids typically require at least 3 very strong trainers, although certain Pokemon that are double-weak to a single type can be defeated with only 2 very strong trainers.
Long Answer: This is a difficult question to answer because it very much depends on trainer and Pokemon levels, types, and moves. 1-star raids are easy to beat once a trainer gets Pokemon above level 15. 3-star raids can be beaten by a single trainer if their Pokemon have types and moves that take advantage of a raid's weaknesses and are at least level 30. With the increase of Pokemon levels up to 50, it should become relatively easy for a single trainer to beat a 3-star raid as long as they can power up a couple Pokemon to the max level, but the stardust and candy requirement will prevent most trainers from doing that for a while.
5-star and mega raids will probably always require more than one trainer to beat, even with the level increase to 50. They just have too much health for a single trainer to take down, although I have seen "mock solo raids" where two people enter a raid and only one person attacks, so they can get the attack boost from trainer friendship levels and beat the raid. But these require max level Pokemon with weather boosts and only work against certain raids that have low defense or double weaknesses (ex: rock against a fire/flying Pokemon, fire against bug/steel Pokemon, ground against fire/steel Pokemon).
For normal trainers, 5-star and mega raids typically require at least 3 people, and the high defense raids like the Regi trio will require 4 trainers. I suggest trying for 4-5 trainers for all 5-star and mega raids to make the fights easier and more of a certain victory.