LogRitmo client-side / livephase / 02LR / 02 active
vocabulário
registro local

Vocabulário revisado.

sem envio externo

Os termos entram aqui quando você abre uma explicação. O registro fica somente neste navegador, em armazenamento local.

nenhum termo consultado

Abra um tooltip do modo iniciante para começar seu vocabulário.

fase 02 / grafos
04 / grafos

A*.

Use custo e direção para chegar ao destino com menos desvios.

ver Dijkstra
visualização passo a passo

Combina distância percorrida com uma heurística até o alvo.

stage / A*fronteira / caminho
grafo / 08 nós / 11 arestas 0 1 0
42231423241AorigemBBCCDDEEFFGGHalvo
atual visitado caminho origem A → alvo H
telemetria / grafo
passo00grafo carregado — origem pronta
nós visitados00estado fechado
fronteira01próximos candidatos
custo alvoainda calculando
playback observado · grafo

Duração que aconteceu.

Execuções concluídas nesta bancada, medidas durante o playback ativo no navegador e salvas apenas neste dispositivo.

média / últimas 0A* · armazenamento local
sem registros ainda

Execute o algoritmo até o fim para transformar esta bancada em uma série de medições reais.

/ leitura da fronteira

A*
prioriza a promessa.

A* utiliza e uma para priorizar caminhos promissores. Nesta bancada, a estimativa usa a geometria do grafo calibrada pelos pesos para não superestimar o custo restante.

estime o próximo passo
A rota combina distância percorrida e uma , que não pode superestimar o custo restante.

melhorO(E)
médioO(E log V)
piorO(E log V)

O(E) é um cenário favorável. Nesta bancada, a heurística é calibrada pelos pesos para não superestimar o custo restante, e a fila linear prioriza a compreensão em vez do benchmark.

/ por baixo do palco

Pseudocódigo e
implementação.

A mesma rede pode ser explorada com uma fila, uma pilha ou uma função de custo. Os trechos mostram o núcleo da decisão; funções de apoio, como recuperar a rota ou escolher o menor custo, aparecem com nomes descritivos para manter o foco da explicação.

01calcule custo + heurística
02escolha a menor pontuação f (custo + estimativa)
03relaxe vizinhos
04atualize o melhor caminho
05pare ao alcançar o alvo
/ implementação sincronizada
function aStar(graph, start, goal) {  const open = [start];  const gScore = { [start]: 0 };  while (open.length) {    const node = bestByFScore(open, gScore, goal);    if (node === goal) return reconstruct(node);    for (const edge of graph[node]) {      const score = gScore[node] + edge.weight;      if (score < (gScore[edge.to] ?? Infinity)) {        gScore[edge.to] = score; open.push(edge.to);      }    }  }  return null;}