El algoritmo que planteas para listar las categorias no estaria mal, pero te comento que estarias limitado a la creación de categorias de un solo nivel.
Haciendolo como lo haces, sólo podrias crear categorias de este estilo
- Categoria A
Noticia de Categoria A
Noticia de Categoria A
- Categoria B
Noticia de Categoria B
Noticia de Categoria B
si necesitas cear categorias con más niveles, quizás este post te ayude:
http://www.forosdelweb.com/showpost....&postcount=146
Saludotes...