C++ STL中的forward_list resize()函数
forward_list::resize() 是C++ STL中的一个内置函数,它可以更改forward_list的大小。如果给定的大小大于当前大小,则在forward_list的末尾插入新元素。如果给定的大小小于当前大小,则会销毁多余的元素。
语法:
forwardlist_name.resize(n)
参数: 该函数只接受一个必填参数n,它指定了forward list的新大小。
返回值: 该函数不返回任何值。下面的程序说明了上述函数:
程序1:
// C++程序演示forward_list::resize()函数
#include
using namespace std;
int main()
{
forward_list fl = {10, 20, 30, 40, 50};
// 打印forward list元素
cout << "The contents of forward list :";
for (auto it = fl.begin(); it != fl.end(); ++it)
cout << *it << " ";
cout << endl;
// 调整大小为7
fl.resize(7);
// 打印resize()后的forward list元素
cout << "The contents of forward list :";
for (auto it = fl.begin(); it != fl.end(); ++it)
cout << *it << " ";
return 0;
}
输出:
The contents of forward list :10 20 30 40 50
The contents of forward list :10 20 30 40 50 0 0
程序2:
// C++程序演示forward_list::resize()函数
#include
using namespace std;
int main()
{
forward_list fl = {10, 20, 30, 40, 50};
// 打印forward list元素
cout << "The contents of forward list :";
for (auto it = fl.begin(); it != fl.end(); ++it)
cout << *it << " ";
cout << endl;
// 调整大小为3
fl.resize(3);
// 打印resize()后的forward list元素
cout << "The contents of forward list :";
for (auto it = fl.begin(); it != fl.end(); ++it)
cout << *it << " ";
return 0;
}
输出:
The contents of forward list :10 20 30 40 50
The contents of forward list :10 20 30
时间复杂度: O(n)
辅助空间复杂度: O(1)