gpt4 book ai didi

C++排序算法

转载 作者:搜寻专家 更新时间:2023-10-31 01:50:49 24 4
gpt4 key购买 nike

感谢您提前查看此问题。

我正在尝试订购以下项目列表:

Bpgvjdfj,Bvfbyfzc
Zjmvxouu,Fsmotsaa
Xocbwmnd,Fcdlnmhb
Fsmotsaa,Zexyegma
Bvfbyfzc,Qkignteu
Uysmwjdb,Wzujllbk
Fwhbryyz,Byoifnrp
Klqljfrk,Bpgvjdfj
Qkignteu,Wgqtalnh
Wgqtalnh,Coyuhnbx
Sgtgyldw,Fwhbryyz
Coyuhnbx,Zjmvxouu
Zvjxfwkx,Sgtgyldw
Czeagvnj,Uysmwjdb
Oljgjisa,Dffkuztu
Zexyegma,Zvjxfwkx
Fcdlnmhb,Klqljfrk
Wzujllbk,Oljgjisa
Byoifnrp,Czeagvnj

进入以下顺序:

Bpgvjdfj
Bvfbyfzc
Qkignteu
Wgqtalnh
Coyuhnbx
Zjmvxouu
Fsmotsaa
Zexyegma
Zvjxfwkx
Sgtgyldw
Fwhbryyz
Byoifnrp
Czeagvnj
Uysmwjdb
Wzujllbk
Oljgjisa
Dffkuztu

这是由以下人员完成的:

  1. 取第一对并将名字放入列表
  2. 使用对的第二个名字,找到它用作名字的对
  3. 将那对的第二个名字添加到列表中
  4. 重复 2 和 3

我正在用这些对填充一个 unordered_map,然后对每个名称进行排序并将其添加到列表中。这可以在下面的代码中看到:

westIter = westMap.begin();
std::string westCurrent = westIter->second;
westList.push_front(westCurrent);

for(int i = 0; i < 30; i++)
{
if(westMap.find(westCurrent) != westMap.end())
{
//find pair in map where first iterator is equal to "westCurrent"
//append second iterator of pair to list
}
westIter++;
}

注意:我不确定此时“push_front”是否正确,因为我只插入了第一个值。

我的问题是,有人可以告诉我一些关于如何解决这个问题的见解吗?因为我不确定最好的方法以及我的想法是否正确。任何见解将不胜感激。

最佳答案

您的计划中只有一个弱点。你需要先找到链式店的第一人,纽约先生。

您的算法假定该行从第一个人开始。为此,您应该首先扫描整个 map 以找到没有作为第二个元素出现的名称。那是纽约先生,你可以从那里开始。 push_back 是您需要在此处使用的内容。

关于C++排序算法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14574394/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com