Costumo interagir com pessoas que desejam solicitar um algoritmo para um problema computacional (ou sua complexidade), mas não o expressam de maneira rigorosa para que nós (cientistas da computação) entendamos.
Referenciá-los a livros como o CLRS não é útil porque os exemplos geralmente têm uma maneira bastante direta de declarar rigorosamente, por exemplo, dada a lista de adjacências de um gráfico e dois vértices nele, o caminho mais curto entre esses vértices.
Existe algum livro bom (ou algum outro recurso) em que uma pessoa com conhecimento mínimo em CS possa aprender como alguém deve formular e declarar problemas computacionais de maneira rigorosa e compreensível para os cientistas da computação?
De preferência, o livro deve ter muitos exemplos de como formular problemas computacionais rigorosamente a partir de vários exemplos do domínio e do mundo real.
Esclarecimento
Para tornar a questão mais específica, vamos supor que eles conheçam a terminologia básica de matemática / CS, como conjuntos, funções, gráficos, listas, etc. no nível do 1º / 2º ano do estudante de graduação em CS (que é o caso das pessoas que eu tenho em mente). Por exemplo, eles leram alguns livros introdutórios como Aho e Ullman (embora possam não ter entendido completamente).
- Al Aho e Jeff Ullman, Fundamentos de Ciência da Computação , 1992.