Police arrested the 27-year-old after the apparently random assault around 5:00 am (local time) at the commuter railway station of the small town of Grafing, east of Munich.
One of the victims, a 56-year-old man, later died of his wounds in hospital. Authorities had earlier wrongly given his age as 50.
The others injured were men aged 43, 55 and 58. One of the victims was seriously hurt, the other two more lightly wounded.
However, hours later, Bavaria state's interior ministry said that "so far we have no evidence for an Islamist motive, but the investigation continues".
Also Read
"We have found the man had psychological and drug problems," ministry spokesman Oliver Platzer told AFP.
Federal Interior Minister Thomas de Maiziere said that "from Berlin I don't want to feed and evaluate speculation about the motive."
Bavaria's interior minister Joachim Herrmann said the attacker, named locally as Paul H, was a German national, as authorities said he hailed from central Hesse state and did not have a migrant background.
Earlier Ken Heidenreich, spokesman for the prosecutor's office, had said that the "assailant made remarks at the scene of the crime that indicate a political motive -- apparently an Islamist motive... We are still determining what the exact remarks were."
In the dawn attack, the assailant stabbed one man aboard a train, another on the platform, then left the station and slashed two more men on bicycles outside, said Bavarian police spokesman Karl-Heinz Segerer.
Bloody footsteps and police forensic officers in white plastic suits could be seen at the cordoned-off railway station in video footage from Grafing, 30 kilometres east of the Bavarian capital.