3#define _CRT_SECURE_NO_WARNINGS
57 if ((estado =
Estado(i)) != NULL)
69 return indice[
atual].prox;
70 if (i >= 0 && i < indice.
Count())
71 return indice[i].prox;
82 return indice[
atual].proxDistinto;
83 if (i >= 0 && i < indice.
Count())
84 return indice[i].proxDistinto;
95 return indice[
atual].estado;
96 if (i >= 0 && i < indice.
Count())
97 return indice[i].estado;
121 int NovoElemento(
TNo elemento);
124 void LibertarLista();
127 void LibertarSeguinte(
int id);
struct SIndice TIndice
Estrutura de índice para lista de estados.
@ limite
Valor dependente do algoritmo. Exemplo: Profundidade limitada.
Lista ordenada de nós para algoritmos de procura informada.
bool Completa()
Indica se a lista é completa (nunca foi limpa).
TNo Estado(int i=-1)
Retorna o estado armazenado no elemento.
CListaNo(int limite=0)
Construtor da lista de nós.
int atual
Índice do elemento atual a processar.
int Inserir(TNo elemento, int id=0)
Insere um novo estado na lista, por ordem de LowerBound.
int ProximoDistinto(int i=-1)
Retorna o próximo elemento com custo distinto.
int Proximo(int i=-1)
Retorna o próximo elemento na lista.
int Valor(int i)
Retorna o valor (LowerBound) de um elemento.
Representa um estado no espaço de estados.
Estrutura de índice para lista de estados.
int prox
Próximo elemento na lista (ordem por custo).
TNo estado
Estado armazenado.
int proxDistinto
Próximo elemento na lista com custo distinto.