Richard Rojas, 26, a US navy veteran who was arrested twice previously for drunk driving, is now in custody.
He also said he expected to die, the sources told AP news agency.
According to Reuters, he said after being arrested: "You were supposed to shoot me! I wanted to kill them."
Mr Rojas has been charged with second-degree murder, aggravated vehicular homicide and multiple counts of attempted murder. He is expected to appear in court later on Friday.
What happened on Thursday?
The streets in Times Square, a bustling tourist district, were thronged with visitors when the car ploughed through the crowds.
The burgundy Honda sedan jumped the kerb at 45th Street and Broadway at 11:55 local time (15:55 GMT) and drove at high speed for three blocks before crashing into a pole.
Watch: How the incident unfolded
It came to a crumpled standstill with smoke and flames escaping the bonnet.
Afterwards, victims lay on the ground, many of them separated from their scattered shoes and belongings, as medical staff, police officers and passersby tried to assist them.
One pregnant woman at the scene said: "A man pulled me out of the way of the car. I think he saved my life."
Media reports say a ticket agent and a worker at Planet Hollywood restaurant were among the people who helped police subdue and detain Mr Rojas.
The Planet Hollywood worker, Ken Bradix, told Associated Press: "He began screaming, no particular words but just utter screaming. He was swinging his arms at the same time. There was something wrong with him."
The incident evoked recent terrorist attacks by vehicle in London, Nice and Berlin but New York mayor Bill de Blasio said there was "no indication" it was an act of terrorism.
What do we know of Rojas?
Police believe he was high on synthetic marijuana, known as K2, ABC News reports, citing law enforcement sources. Initial tests reportedly came back negative for alcohol but positive for drugs.
Richard Rojas was arrested after ramming his car into pedestrians, one of whom died
According to media reports, he has a history of offending:
- He was arrested for threatening a man with a knife earlier this month
- He was arrested for drunk driving in 2015
- He spent two months in a military prison in South Carolina, in 2013 - it is not clear why
- In 2012, he attacked a taxi driver at a naval base in Florida, shouted "my life is over" and threatened to kill police - after which he was charged with misdemeanour battery and resisting an officer without violence
- He was arrested for drunk driving in 2008
One neighbour told Reuters Mr Rojas had come back from serving in the navy with a drinking problem.
Harrison Ramos, who lives in Mr Rojas's building in the Bronx, said: " He went through a real tough time. Don't make him out to be a terrorist or something. He served his country and when he came back, nobody helped him.
"That's my friend. I care about him, and it hurts."
One investigator told the New York Times Mr Rojas had so far offered no coherent explanation, and was "just rambling and saying crazy stuff".
What do we know of the victims?
The woman who died was 18 years old. Her name was Alyssa Elsman and she had been visiting from Michigan with her family. She graduated last year from a high school in Portage, Michigan.
Her 13-year-old sister was also hit and injured.
The 22 injured people included:
- Cheryl Howard, who had been shopping with her daughter when the car hit her, bruising her head above her left eye and cutting her right arm
- 64-year-old retired teacher William Nelson, who was taken to hospital and sedated
- Thomas Henry, 72, who told the New York Times he "thought it was a dream"
- Ariel Lebowitz, 39, who did not remember the car hitting him, and suffered a concussion
What is Times Square?
An iconic space full of shops and entertainment places in downtown Manhattan.
It is full of advertising screens and, as a major tourist destination will be familiar to those who have visited New York. It features in many films. It is right next to Broadway, where many musicals and plays are performed.