C++ 合并两个逆序链表 | 附带详细代码示例
C++ 合并两个逆序链表
这篇文章提供了一个 C++ 程序,演示如何合并两个逆序链表并对合并后的链表进行排序。
以下是代码:
#include <iostream>
#include <vector>
#include <algorithm>
int main() {
int n1, n2;
std::vector<int> table1, table2;
// 输入表1的元素个数和元素值
std::cin >> n1;
for (int i = 0; i < n1; i++) {
int num;
std::cin >> num;
table1.push_back(num);
}
// 输入表2的元素个数和元素值
std::cin >> n2;
for (int i = 0; i < n2; i++) {
int num;
std::cin >> num;
table2.push_back(num);
}
// 合并两个表
table1.insert(table1.end(), table2.begin(), table2.end());
std::sort(table1.begin(), table1.end());
// 输出合并后的元素值
std::cout << 'The current List is:' << std::endl;
for (int i = 0; i < table1.size(); i++) {
std::cout << table1[i];
if (i != table1.size() - 1) {
std::cout << ',';
}
}
return 0;
}
代码说明:
- 程序首先使用
std::vector创建两个向量 (table1 和 table2) 来存储链表数据。 - 然后,它提示用户输入两个链表的元素数量和值。
- 使用
insert()函数将第二个链表 (table2) 的元素添加到第一个链表 (table1) 的末尾,从而合并两个链表。 std::sort()函数用于对合并后的链表进行排序。- 最后,使用循环遍历合并后的链表,并使用
std::cout打印每个元素。
如何运行代码:
- 将代码保存为
.cpp文件(例如,merge_lists.cpp)。 - 使用 C++ 编译器编译代码,例如:
g++ merge_lists.cpp -o merge_lists - 运行编译后的文件:
./merge_lists - 程序将提示您输入链表元素。按照屏幕上的说明进行操作。
希望这个例子能帮助您理解如何在 C++ 中合并两个逆序链表。
原文地址: https://www.cveoy.top/t/topic/UwR 著作权归作者所有。请勿转载和采集!