14181822c9
add intersection for unsorted lists
...
Changed the way the intersection is computed. An intersection does
not return duplicate values. So the result is like a set.
2017-12-09 15:40:22 +01:00
b56f1e6688
use sorted flag in hashcode/equals
2017-12-08 18:35:49 +01:00
29d4e49298
add shuffle method
2017-12-08 18:27:55 +01:00
c41e52f8b3
add static intersection method for sorted lists
2017-12-03 09:59:58 +01:00
ba51b62a53
use Arrays.copy or Arrays.copyOfRange where applicable
...
Arrays.copy is easier to use than System.arrayCopy.
2017-12-03 09:26:52 +01:00
ef5d7817b2
add clear() method
2017-12-03 09:19:13 +01:00
b7ef9d2e6f
apidoc: indexOf uses binary search if list is sorted
2017-12-03 09:13:02 +01:00
63c7740fd6
rename field 'index' to 'size'
...
The field 'index' describes two things:
1. the index the next element will be added to
2. the size of the list
Most methods use the second meaning.
2017-12-03 09:10:03 +01:00
477820050b
use 'sorted' flag in indexOf
2017-12-03 09:04:17 +01:00
c7cacf1ad4
add 'sorted' flag that keeps track whether the list is sorted
...
The flag can be used in indexOf or for a better retainAll
implementation.
2017-12-02 20:24:32 +01:00
7f3d4872ae
add API doc for NullPointerExceptions
2017-11-27 20:20:42 +01:00
994ce6842a
documentation states that remove* methods do not release any memory
2017-11-27 20:04:39 +01:00
ecf1a62c95
do not copy array twice when inserting
2017-11-10 10:42:47 +01:00
88e0179dd5
add method removeIf
2017-11-10 10:35:51 +01:00
b50cb8fdca
update to gradle 4.3.1
2017-11-10 10:09:53 +01:00
a59db6cfe8
add method retainAll
2017-11-10 10:03:10 +01:00
81e1d1f131
add method removeAll
2017-11-09 14:32:15 +01:00
db6ca1387d
add replaceAll
2017-11-09 09:33:19 +01:00
6df2553fae
add indexOf(value) and indexOf(value, offset)
2017-10-13 17:02:01 +02:00
cbe468cae8
add toArray(int[])
2017-10-07 10:01:38 +02:00
56779368b8
make class final
...
We haven't designed the class for extension.
2017-09-29 18:59:02 +02:00
e7d88babb4
add stream() and parallelStream()
...
Both methods return an IntStream.
2017-09-29 18:57:43 +02:00
fc1ca26d52
use fromIndex and toIndex for remove instead of from and length
...
The new API is consistent with the internal API of ArrayList.
2017-09-29 18:12:58 +02:00
5112fcdfa0
do not create empty array in clone
2017-09-29 17:46:00 +02:00
235565bfe4
make IntList cloneable
2017-09-28 20:25:56 +02:00
a178086dfa
make IntList serializable
2017-09-28 19:02:43 +02:00
4a762f39b9
add special implementation for add
...
The special implementation does not need to allocate an array for the
varargs of addAll
2017-09-28 18:22:16 +02:00
4da0726185
added todos with features that could be added
2017-09-26 20:22:52 +02:00
d00ab6533d
use a static final empty array if list is empty
2017-09-26 20:10:54 +02:00
ab7d554d52
grow the array only by 50%
...
The old implementation grew the array by 100% with each resize.
The new implementation reduces the memory usage for, especially
for large lists.
The new algorithm is overflow-concious.
2017-09-26 19:59:50 +02:00
4a07ed14b0
update gradle to 4.2
2017-09-26 19:30:58 +02:00
f7870a15a7
add sort (ascending) method
2017-02-05 14:18:47 +01:00
a535761b46
README.md edited online with Bitbucket
2017-02-04 08:15:29 +00:00
9a365834b6
Replace license with MIT.
...
Apparently putting your code into public domain is not that easy,
because of law(yer)s. So I'll stick to MIT license for now. It
seems to be the easiest and most free license that is widely
recognized.
2017-02-04 09:10:28 +01:00
ef5fb80fc9
README.md edited online with Bitbucket
2017-02-04 07:50:50 +00:00
145c2152d0
Add IntList a list implementation for primitive integers.
2017-02-03 20:31:58 +01:00
d3315a80d5
add license
...
This software released into the public domain.
2017-02-03 20:29:45 +01:00
5b082d6069
Initial commit
2017-02-01 18:50:57 +01:00