The 27-year-old has been charged with two counts of aggravated assault and one count of the possession of a weapon for a dangerous purpose.
The first attack took place around 10.30 p.m. PT on the Seawall near Quebec Street at Terminal Avenue, when a stranger approached a 67-year-old man from behind and hit him in the head with a hammer.
The victim fell to the ground, and was struck again — in the head and on the arm — before the intervention of a passerby scared the suspect away.
Within half-an-hour, someone attacked another man near the intersection of Main and East Hastings streets. The 49-year-old victim was hit in the head with a hammer, knocked to the ground and rendered unconscious.
Paramedics rushed him to hospital, where he remains in critical, but stable, condition.
Police said Monday the first attack could have been fatal if not for the witness stepping into help. The victim was treated for a broken arm and lacerations to the head.
They said the suspect — who was located a short time later — is known to police, and they believe his ongoing mental health issues and long-term substance abuse played a part in the attacks.