LeetCode 752. 打开转盘锁


双向广度优先搜索

queue<string> begin_queue,end_queue;

begin_queue.push(begin);

end_queue.push(end);

unordered_set<string> begin_visited,end_visited;

begin_visited.insert(begin);

end_visited.insert(end);

int step=0;

while(!begin_queue.empty()&&!end_queue.empty())

{

if(begin_queue.size()<end_queue.size())

{

//处理begin_queue

//若搜索到end_visited中的节点,则直接返回step+1;

}

else

{

//处理end_queue

//若搜索到begin_visited中的节点,则直接返回step+1;

}

step++;

}



queue<string> begin_queue,end_queue;begin_queue.push(begin);end_queue.push(end);unordered_set<string> begin_visited,end_visited;begin_visited.insert(begin);end_visited.insert(end);int step=0;while(!begin_queue.empty()&&!end_queue.empty()){if(begin_queue.size()<end_queue.size()){//处理begin_queue//若搜索到end_visited中的节点,则直接返回step+1;}else{//处理end_queue//若搜索到begin_visited中的节点,则直接返回step+1;}step++;}

posted @ 2021-12-07 20:03  80k  阅读(31)  评论(0)    收藏  举报