The victim is believed to be a nine-year-old girl who went missing from the Blue Mountains near Sydney last Thursday, local media report.
The child's body was found by officers on Tuesday during a search of bushland in a neighbouring area.
Police said a 31-year-old man had been arrested in a flat in inner Sydney and charged with murder.
He was remanded in custody to face a court on Wednesday.
Media reports said the girl - who cannot be identified for legal reasons - was on holiday with her mother when she disappeared last Thursday.