Either way of writing it is correct. In British English it is more commone to see it written as "no one", but both "no one" and "no-one" are acceptable. Normally if it is written as (no one" it is two words and if it is written as "no-one" it is one single word, but it also depends on the context. Personally I write "no-one" because it differentiates it from "no one" in sentences like "no one person can help you" (You're going to need more than one person to get you out of this fix.) Alternatively you can just use the word nobody as it means exactly the same thing.
Hope I could help!!!
Your first question should be written "How do I write it?"
There are different definitions of "word."
An "orthographic word" is a group of characters set off from other characters by blanks. In that sense, "no one" is two words, "no-one" is one word, "1492" is one word, and "22B Baker Street" is three words while "22 B Baker Street" is four.
A "lexical word" is one which has a separate entry in a dictionary. Since "no one" is listed as a separate entry in dictionaries, as a pronoun with the same meaning as "nobody," it is a single lexical word.
I have been able to find the spelling "no-one" as a listed variant of "no one" in only one of the online dictionaries which I know to have a printed form, the Random House Unabridged. I did find "no-one" used in an example sentence in the Cambridge Advanced Learner's Dictionary.
Personally, Aneg, I would never dream of writing no one [= nobody] ~ only ever no-one (single lexical word). No one I would always read as two separate words, as in Cutiepie's example No one person can help you.