blob: b830984b3e63d64106e071b5e31331b4e262774b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
#include "arrays.h"
template <class X>
class flexset : private array<X>{
public:
ordarray(): array<X>(){};
~ordarray(){};
int insert(const X &elt){
int a=0, b=getLength()-1;
X* data=this->getData(0);
if (elt==data[0]) this->insertElement(elt, 0);
if (elt==data[b]) insertElement(elt, b);
int c=(a+b)/2;
while (elt!=data[c]){
if (a==b) {insertElement(elt, a); return a;}
if (elt<data[c])
}
};
};
|