如何在 C++ 中创建复数向量?
How to create a vector of complex numbers in c++?
我有 n 个复数的两个输入(实部和虚部)。我不知道如何将它们一起存储在一个向量中,以便我可以使用 STL 复杂函数执行复杂计算。这是我尝试过的,但超过了时间限制。
vector<complex<double> > a;
for(i=0;i<d;i++)
{
int temp;
cin>>temp;
real.push_back(temp);
}
for(i=0;i<d;i++)
{
int temp;
cin>>temp;
imag.push_back(temp);
}
for(i=0;i<d;i++)
{
a.push_back(complex<double>(real[i], imag[i]));
}
这是我使用的示例:
double real;
double imaginary;
std::vector<std::complex<double> > database;
//...
std::cin >> real;
std::cin >> imaginary;
const std::complex<double> temp(real, imaginary);
database.push_back(temp);
在上面的例子中,我分别读入了实部和虚部。接下来,我使用实部和虚部创建一个临时 complex
对象。最后我把push_back
的值传给了数据库。
我有 n 个复数的两个输入(实部和虚部)。我不知道如何将它们一起存储在一个向量中,以便我可以使用 STL 复杂函数执行复杂计算。这是我尝试过的,但超过了时间限制。
vector<complex<double> > a;
for(i=0;i<d;i++)
{
int temp;
cin>>temp;
real.push_back(temp);
}
for(i=0;i<d;i++)
{
int temp;
cin>>temp;
imag.push_back(temp);
}
for(i=0;i<d;i++)
{
a.push_back(complex<double>(real[i], imag[i]));
}
这是我使用的示例:
double real;
double imaginary;
std::vector<std::complex<double> > database;
//...
std::cin >> real;
std::cin >> imaginary;
const std::complex<double> temp(real, imaginary);
database.push_back(temp);
在上面的例子中,我分别读入了实部和虚部。接下来,我使用实部和虚部创建一个临时 complex
对象。最后我把push_back
的值传给了数据库。