C++按照姓名的字典序排序
时间: 2025-04-17 15:44:59 浏览: 21
### C++ 实现按照姓名字典序排序
为了实现按姓名字典序排序的功能,可以利用标准库中的`std::sort`算法。此算法默认情况下会依据字符串的字典顺序来排列元素。下面展示一段完整的代码示例:
```cpp
#include <iostream>
#include <vector>
#include <algorithm> // std::sort 函数所在头文件
using namespace std;
class Solution {
public:
void sortNames(vector<string>& names) {
// 使用 std::sort 对名字列表进行排序
sort(names.begin(), names.end());
}
};
int main() {
vector<string> nameList = {"Alice", "Bob", "Charlie", "David"};
cout << "Before sorting:" << endl;
for (const auto& name : nameList) {
cout << name << ' ';
}
cout << '\n';
Solution solution;
solution.sortNames(nameList);
cout << "After sorting in lexicographical order:" << endl;
for (const auto& name : nameList) {
cout << name << ' ';
}
cout << '\n';
}
```
上述程序定义了一个名为 `Solution` 的类,在其中实现了成员函数 `sortNames` 来接收并修改传入的名字数组使其变为字典序[^1]。
对于更复杂的需求,比如当希望自定义比较逻辑时,则可以通过传递第三个参数给 `std::sort` 方法来自定义谓词(即比较器),从而改变原有的排序行为[^2]。
阅读全文
相关推荐
















