Javolution 6.0.0 java
|
Public Member Functions | |
FractalTableImpl () | |
FractalTableImpl (int shift) | |
FractalTableImpl (int shift, Object[] data, int offset) | |
int | capacity () |
Object | get (int index) |
Object | set (int index, Object element) |
void | shiftLeft (Object inserted, int last, int length) |
void | shiftRight (Object inserted, int first, int length) |
FractalTableImpl | upsize () |
Package Attributes | |
int | offset |
Static Package Attributes | |
static final int | BASE_CAPACITY_MIN = 16 |
static final int | SHIFT = 8 |
Private Member Functions | |
void | copyTo (FractalTableImpl that) |
FractalTableImpl | allocate (int i) |
FractalTableImpl | F (int i) |
Private Attributes | |
Object[] | data |
final int | shift |
Static Private Attributes | |
static final int | BASE_CAPACITY_MAX = 1 << SHIFT |
A fractal-based table with fast insertion/deletion capabilities regardless of the collection size. It is based on a fractal structure with self-similar patterns at any scale (large tables have the same structure as smaller tables which have similar structure as even smaller tables and so on).
Definition at line 19 of file FractalTableImpl.java.
javolution.util.internal.table.FractalTableImpl.FractalTableImpl | ( | ) |
Definition at line 35 of file FractalTableImpl.java.
References javolution.util.internal.table.FractalTableImpl.BASE_CAPACITY_MIN, and javolution.util.internal.table.FractalTableImpl.data.
Referenced by javolution.util.internal.table.FractalTableImpl.allocate(), javolution.util.internal.table.FractalTableImpl.F(), javolution.util.internal.table.FractalTableImpl.get(), and javolution.util.internal.table.FractalTableImpl.upsize().
javolution.util.internal.table.FractalTableImpl.FractalTableImpl | ( | int | shift | ) |
Definition at line 40 of file FractalTableImpl.java.
References javolution.util.internal.table.FractalTableImpl.data, and javolution.util.internal.table.FractalTableImpl.shift.
javolution.util.internal.table.FractalTableImpl.FractalTableImpl | ( | int | shift, |
Object[] | data, | ||
int | offset | ||
) |
Definition at line 45 of file FractalTableImpl.java.
References javolution.util.internal.table.FractalTableImpl.data, javolution.util.internal.table.FractalTableImpl.offset, and javolution.util.internal.table.FractalTableImpl.shift.
|
private |
Definition at line 160 of file FractalTableImpl.java.
References javolution.util.internal.table.FractalTableImpl.data, javolution.util.internal.table.FractalTableImpl.FractalTableImpl(), javolution.util.internal.table.FractalTableImpl.SHIFT, and javolution.util.internal.table.FractalTableImpl.shift.
Referenced by javolution.util.internal.table.FractalTableImpl.F().
int javolution.util.internal.table.FractalTableImpl.capacity | ( | ) |
Definition at line 51 of file FractalTableImpl.java.
References javolution.util.internal.table.FractalTableImpl.data, and javolution.util.internal.table.FractalTableImpl.shift.
Referenced by javolution.util.internal.table.FastTableImpl< E >.upsize().
|
private |
Definition at line 147 of file FractalTableImpl.java.
References javolution.util.internal.table.FractalTableImpl.data, javolution.lang.MathLib.min(), javolution.util.internal.table.FractalTableImpl.offset, and javolution.util.internal.table.FractalTableImpl.shift.
Referenced by javolution.util.internal.table.FractalTableImpl.upsize().
|
private |
Definition at line 167 of file FractalTableImpl.java.
References javolution.util.internal.table.FractalTableImpl.allocate(), javolution.util.internal.table.FractalTableImpl.data, and javolution.util.internal.table.FractalTableImpl.FractalTableImpl().
Referenced by javolution.util.internal.table.FractalTableImpl.set(), javolution.util.internal.table.FractalTableImpl.shiftLeft(), javolution.util.internal.table.FractalTableImpl.shiftRight(), and javolution.util.internal.table.FractalTableImpl.upsize().
Object javolution.util.internal.table.FractalTableImpl.get | ( | int | index | ) |
Definition at line 57 of file FractalTableImpl.java.
References javolution.util.internal.table.FractalTableImpl.data, javolution.util.internal.table.FractalTableImpl.FractalTableImpl(), javolution.util.internal.table.FractalTableImpl.offset, and javolution.util.internal.table.FractalTableImpl.shift.
Referenced by javolution.util.internal.table.FastTableImpl< E >.get(), javolution.util.internal.table.FastTableImpl< E >.IteratorImpl.next(), javolution.util.internal.table.FastTableImpl< E >.remove(), javolution.util.internal.table.FractalTableImpl.shiftRight(), and javolution.util.internal.table.FastTableImpl< E >.writeObject().
Object javolution.util.internal.table.FractalTableImpl.set | ( | int | index, |
Object | element | ||
) |
Definition at line 63 of file FractalTableImpl.java.
References javolution.util.internal.table.FractalTableImpl.data, javolution.util.internal.table.FractalTableImpl.F(), javolution.util.internal.table.FractalTableImpl.offset, javolution.util.internal.table.FractalTableImpl.set(), and javolution.util.internal.table.FractalTableImpl.shift.
Referenced by javolution.util.internal.table.FastTableImpl< E >.addFirst(), javolution.util.internal.table.FastTableImpl< E >.addLast(), javolution.util.internal.table.FastTableImpl< E >.removeFirst(), javolution.util.internal.table.FastTableImpl< E >.removeLast(), javolution.util.internal.table.FractalTableImpl.set(), javolution.util.internal.table.FastTableImpl< E >.set(), javolution.util.internal.table.FractalTableImpl.shiftLeft(), and javolution.util.internal.table.FractalTableImpl.shiftRight().
void javolution.util.internal.table.FractalTableImpl.shiftLeft | ( | Object | inserted, |
int | last, | ||
int | length | ||
) |
Shifts the specified elements(]last - length, last] modulo capacity) one position to the left. No shift if length (modulo capacity) is zero.
Definition at line 73 of file FractalTableImpl.java.
References javolution.util.internal.table.FractalTableImpl.data, javolution.util.internal.table.FractalTableImpl.F(), javolution.util.internal.table.FractalTableImpl.offset, javolution.util.internal.table.FractalTableImpl.set(), javolution.util.internal.table.FractalTableImpl.shift, and javolution.util.internal.table.FractalTableImpl.shiftLeft().
Referenced by javolution.util.internal.table.FastTableImpl< E >.add(), javolution.util.internal.table.FastTableImpl< E >.remove(), and javolution.util.internal.table.FractalTableImpl.shiftLeft().
void javolution.util.internal.table.FractalTableImpl.shiftRight | ( | Object | inserted, |
int | first, | ||
int | length | ||
) |
Shifts the specified element ([first, first + length[ modulo capacity) one position to the right. No shift if length (modulo capacity) is zero.
Definition at line 104 of file FractalTableImpl.java.
References javolution.util.internal.table.FractalTableImpl.data, javolution.util.internal.table.FractalTableImpl.F(), javolution.util.internal.table.FractalTableImpl.get(), javolution.util.internal.table.FractalTableImpl.offset, javolution.util.internal.table.FractalTableImpl.set(), javolution.util.internal.table.FractalTableImpl.shift, and javolution.util.internal.table.FractalTableImpl.shiftRight().
Referenced by javolution.util.internal.table.FastTableImpl< E >.add(), javolution.util.internal.table.FastTableImpl< E >.remove(), and javolution.util.internal.table.FractalTableImpl.shiftRight().
FractalTableImpl javolution.util.internal.table.FractalTableImpl.upsize | ( | ) |
Definition at line 133 of file FractalTableImpl.java.
References javolution.util.internal.table.FractalTableImpl.BASE_CAPACITY_MAX, javolution.util.internal.table.FractalTableImpl.copyTo(), javolution.util.internal.table.FractalTableImpl.data, javolution.util.internal.table.FractalTableImpl.F(), javolution.util.internal.table.FractalTableImpl.FractalTableImpl(), javolution.util.internal.table.FractalTableImpl.SHIFT, and javolution.util.internal.table.FractalTableImpl.shift.
Referenced by javolution.util.internal.table.FastTableImpl< E >.upsize().
|
staticprivate |
Definition at line 23 of file FractalTableImpl.java.
Referenced by javolution.util.internal.table.FractalTableImpl.upsize().
|
staticpackage |
Definition at line 21 of file FractalTableImpl.java.
Referenced by javolution.util.internal.table.FractalTableImpl.FractalTableImpl().
|
private |
An array of data elements or fractal tables (recursion). Data length varies from 2 to BASE_CAPACITY_MAX
Definition at line 30 of file FractalTableImpl.java.
Referenced by javolution.util.internal.table.FractalTableImpl.allocate(), javolution.util.internal.table.FractalTableImpl.capacity(), javolution.util.internal.table.FractalTableImpl.copyTo(), javolution.util.internal.table.FractalTableImpl.F(), javolution.util.internal.table.FractalTableImpl.FractalTableImpl(), javolution.util.internal.table.FractalTableImpl.get(), javolution.util.internal.table.FractalTableImpl.set(), javolution.util.internal.table.FractalTableImpl.shiftLeft(), javolution.util.internal.table.FractalTableImpl.shiftRight(), and javolution.util.internal.table.FractalTableImpl.upsize().
|
package |
Offset value, it is the index of the first element (modulo data.length).
Definition at line 26 of file FractalTableImpl.java.
Referenced by javolution.util.internal.table.FastTableImpl< E >.add(), javolution.util.internal.table.FastTableImpl< E >.addFirst(), javolution.util.internal.table.FractalTableImpl.copyTo(), javolution.util.internal.table.FractalTableImpl.FractalTableImpl(), javolution.util.internal.table.FractalTableImpl.get(), javolution.util.internal.table.FastTableImpl< E >.remove(), javolution.util.internal.table.FastTableImpl< E >.removeFirst(), javolution.util.internal.table.FractalTableImpl.set(), javolution.util.internal.table.FractalTableImpl.shiftLeft(), and javolution.util.internal.table.FractalTableImpl.shiftRight().
|
staticpackage |
Definition at line 22 of file FractalTableImpl.java.
Referenced by javolution.util.internal.table.FractalTableImpl.allocate(), and javolution.util.internal.table.FractalTableImpl.upsize().
|
private |
The index shift, zero if base table.
Definition at line 33 of file FractalTableImpl.java.
Referenced by javolution.util.internal.table.FractalTableImpl.allocate(), javolution.util.internal.table.FractalTableImpl.capacity(), javolution.util.internal.table.FractalTableImpl.copyTo(), javolution.util.internal.table.FractalTableImpl.FractalTableImpl(), javolution.util.internal.table.FractalTableImpl.get(), javolution.util.internal.table.FractalTableImpl.set(), javolution.util.internal.table.FractalTableImpl.shiftLeft(), javolution.util.internal.table.FractalTableImpl.shiftRight(), and javolution.util.internal.table.FractalTableImpl.upsize().