Excercises_GeorgMandl/BSP_1_E/bsp_1_e.cpp

107 lines
1.9 KiB
C++

#include "bsp_1_e.h"
#include <cstdlib>
#include <algorithm>
#include <iostream>
#include <ctime>
using namespace std;
vector<int> sortvec(const vector<int> &x, const vector<int> &y)
{
vector<int> result = x;
for(size_t k = 0; k<y.size(); ++k)
{
auto pos = lower_bound(result.begin(), result.end(), y[k]);
result.insert(pos, y[k]);
}
// check if sorted
if(is_sorted(result.begin(), result.end()) == 0)
{
cout << "FEHLER - nicht sortiert" << endl;
}
return result;
}
vector<int> genrandvec(const int &n)
{
vector<int> v;
srand((unsigned) time(NULL));
for(int k=0; k<n; ++k)
{
int random = 1 + (rand() % n);
v.push_back(random);
}
return v;
}
vector<int> gensortvec(const int & n)
{
vector<int> v;
for(int k = 0; k<n; ++k)
{
v.push_back(k+1);
}
return v;
}
list<int> sortlist(const list<int> &x, const list<int> &y)
{
list<int> result = x;
for(auto it = y.begin(); it != y.end(); ++it)
{
auto pos = lower_bound(result.begin(), result.end(), *it);
result.insert(pos, *it);
}
// check if sorted
if(is_sorted(result.begin(), result.end()) == 0)
{
cout << "FEHLER - nicht sortiert" << endl;
}
return result;
}
list<int> genrandlist(const int &n)
{
list<int> v;
srand((unsigned) time(NULL));
for(int k=0; k<n; ++k)
{
int random = 1 + (rand() % n);
v.push_back(random);
}
return v;
}
list<int> gensortlist(const int & n)
{
list<int> v;
for(int k = 0; k<n; ++k)
{
v.push_back(k+1);
}
return v;
}
list<int> genlistfromvec(const vector<int> &v)
{
list<int> a;
for(size_t k=0; k<v.size(); ++k)
{
a.push_back(v[k]);
}
return a;
}