mirror of
https://github.com/ultimatepp/ultimatepp.git
synced 2026-05-16 06:05:58 -06:00
45 lines
758 B
C++
45 lines
758 B
C++
#include <Core/Core.h>
|
|
|
|
using namespace Upp;
|
|
|
|
CONSOLE_APP_MAIN
|
|
{
|
|
Vector<int> x;
|
|
BiVector<int> y;
|
|
for(int i = 0; i < 100000000; i++) {
|
|
if(i % 10000 == 0)
|
|
Cout() << i << ' ' << x.GetCount() << '\n';
|
|
int val = rand();
|
|
switch(rand() % 6) {
|
|
case 0:
|
|
case 1:
|
|
x.Add(i);
|
|
y.AddTail(i);
|
|
break;
|
|
case 2:
|
|
case 3:
|
|
x.Insert(0, i);
|
|
y.AddHead(i);
|
|
break;
|
|
case 4:
|
|
if(x.GetCount()) {
|
|
x.Drop();
|
|
y.DropTail();
|
|
}
|
|
break;
|
|
case 5:
|
|
if(x.GetCount()) {
|
|
x.Remove(0, 1);
|
|
y.DropHead();
|
|
}
|
|
break;
|
|
}
|
|
ASSERT(x.GetCount() == y.GetCount());
|
|
for(int i = 0; i < x.GetCount(); i++)
|
|
ASSERT(x[i] == y[i]);
|
|
if(x.GetCount() > 10000) {
|
|
x.Clear();
|
|
y.Clear();
|
|
}
|
|
}
|
|
}
|