Here are the basics:
"no" is an adjective. It pairs with a noun,
EX: no books, nobody, no one, under no circumstance
"not" is an adverb. It pairs with a verb, like this,
EX: not go, not want, not have, not see.
"no" becomes "non-" if it modifies an adjective,
EX: non-circumstantial, non-direct
Hope that helps.