모든 경로의 값이 1 인 모든 최단 경로를 찾으려고합니다. 수정 된 BFS를 사용했습니다. 닫힌 노드도 대기열에 추가하고있었습니다. 끝 노드를 찾으면 노드 추가를 멈추고 큐의 끝 노드를 계산합니다. 하지만 그것은 내 테스트 입력을 위해 작동하지 않습니다. 왜 내 생각이 나쁜거야? 여기에 의사BFS 수정
addIntoQueue(startNode)
while(!queueIsEmpty()){
nodeMain = dequeue()
if(nodeMain==stopNode){
found=true
count++
}
if(!found)
for(all node in NodeNeighbors){
if(node!=CLOSED){
addToQueue(node)
}
}
nodeMain=CLOSED
}
카운트 ++ 무엇을하고 있습니까? 코드에서 그 변수를 사용하지 않았습니다. 또한 'stopNode'를 찾은 후 루프를 빠져 나가는 것을 고려해 볼 수도 있습니다. 더 이상 노드가 대기열에 추가되지 않습니다. – smac89
아니요 모든 최단 경로를 계산하려고합니다. 그래서 셀 수입니다. – SpeedEX505
코드를 게시 할 수 없습니다. 큐에 OPEN 노드를 추가하는 방법에 대해 물어 보았습니다. @Al Kepp – SpeedEX505