Um exemplo da complexidade parametrizada é uma kernelização para o problema de cobertura de vértices usando um teorema de Nemhauser e Trotter.
No problema da cobertura mínima de vértices, recebemos um gráfico G não direcionado e precisamos encontrar uma cobertura de vértice G de tamanho mínimo. Uma capa de vértice de um gráfico não direcionado é um subconjunto de vértices que toca todas as arestas.
Aqui está um algoritmo exato que usa uma aproximação na primeira fase.
Fase 1: configure a formulação de programação linear inteira do problema mínimo de cobertura de vértices . Sabe-se (ou é fácil de mostrar) que uma solução ótima básica do relaxamento de programação linear é semi-integral (ou seja, todas as coordenadas são 0, 1 ou 1/2). Essa solução ótima básica pode ser encontrada por um algoritmo de tempo polinomial usual para programação linear (ou nesse caso especial, podemos formulá-lo como um problema de fluxo de rede, para que possamos resolvê-lo combinatoriamente em tempo polinomial). Tendo uma solução ótima básica, a arredondamos para obter uma solução viável para o problema de programação linear inteira original. Seja S o subconjunto de vértices correspondente. É bom observar que S é uma aproximação 2 da instância de cobertura mínima fornecida.
Fase 2: encontre uma cobertura mínima de vértices no subgráfico induzido por S (por exemplo, por uma pesquisa exaustiva). Um teorema de Nemhauser e Trotter afirma que este subgrafo contém uma solução ótima do gráfico de entrada original. Portanto, a correção dessa abordagem segue.
Você pode consultar um livro de Niedermeier sobre algoritmos de parâmetro fixo para esse algoritmo.