c++ - 递归的想法

标签 c++ recursion

我最近写了这个简单的 C++ 程序,我想知道如果它在递归中是否会处理得更快。但是,我没有设法找到一种成功地以递归方式编写它的方法,所以我想问你是否可以帮助我用递归方式编写它。

#include<iostream>
using namespace std;
int main()
{
    for (int i1 = 1; i1 <= 45; i1++)
    {
        for (int i2 = i1 + 2; i2 <= 46; i2++)
        {
            for (int i3 = i2 + 2; i3 <= 47; i3++)
            {
                for (int i4 = i3 + 2; i4 <= 48; i4++)
                {
                    cout<<i1<<" "<<i2<<" "<<i3<<" "<<i4<<endl;
                }
            }
        }
    }
    return 0;
}

最佳答案

递归可能不会让它变得更快,但会改变

cout<<i1<<" "<<i2<<" "<<i3<<" "<<i4<<endl;

cout<<i1<<" "<<i2<<" "<<i3<<" "<<i4<<"\n";

几乎肯定会。这是因为默认情况下 cout 将其输出存储在缓冲区中,并且只是偶尔写入(“刷新”)它。但是,如果您添加 endl,它会立即写入缓冲区,这会比较慢。

关于c++ - 递归的想法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20151027/

相关文章:

c++ - 如何设置QSerialPort打开的串口低延迟

c++ - CImg 库在旋转时创建扭曲的图像

c++ - 我应该优化还是让编译器这样做?

javascript - 非常大的递归javascript

recursion - 在 Laravel 中使用 Baum 显示分层树/在 Laravel 中使用递归函数

javascript - 递归 promise 创建树

c++ - 如何用 C、C++ 在 Linux 操作系统上启动进程

C++:采用不同数据类型的赋值运算符的名称是什么

bash - 递归 ls 和 grep 会比在大型文件系统上查找更快吗?

c - Tribonacci 数和时间/空间复杂度 - C