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 打印每个元素。

如何运行代码:

  1. 将代码保存为 .cpp 文件(例如,merge_lists.cpp)。
  2. 使用 C++ 编译器编译代码,例如:g++ merge_lists.cpp -o merge_lists
  3. 运行编译后的文件:./merge_lists
  4. 程序将提示您输入链表元素。按照屏幕上的说明进行操作。

希望这个例子能帮助您理解如何在 C++ 中合并两个逆序链表。

C++ 合并两个逆序链表 | 附带详细代码示例

原文地址: https://www.cveoy.top/t/topic/UwR 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录