Segun entiendo, un cargo pertenece a una categoría. Una categoría pude tener varios cargos. Si en la tabla cargo se pregunta la categoría a la que pertenece quedaría bien. Solo ingresarias el registro del cargo y la categoría a la que pertenece.
para tu segunda pregunta:
Si una persona puede tener varios cargos y un cargo puede ser ejercido por varias personas, cual de las dos tablas llevaria la llave?
si fuera persona, y tiene varios cargos, tocaría repetir el registro de personas para ingresar 2,3 o 4 personas. Si ponemos la llave en cargos... nos tocaría repetir el registro de cargos cada que una persona ejerza ese cargo? Cuando la situación es así, es cuando es necesario tener una nueva tabla relacionada con cargo y persona.
De esta forma, solo habrá una persona, un cargo y muchas concordancias manejadas por separado.
espero hayas entendido la importancia de una nueva tabla en una relación muchos a muchos.
te recomiendo de igual forma este enlace:
http://www.tejedoresdelweb.com/wiki/..._modelo_er.pdf
Un saludo