File: IntListCompressor.java

package info (click to toggle)
bbmap 38.90%2Bdfsg-1
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 21,520 kB
  • sloc: java: 265,882; sh: 14,954; python: 5,247; ansic: 2,074; perl: 96; xml: 38; makefile: 37
file content (22 lines) | stat: -rwxr-xr-x 448 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
package structures;

public final class IntListCompressor {
	
	public void add(int value){
		list.add(value);
		if(list.freeSpace()==0 && lastCompression<0.75f*list.size()){
			sortAndShrink();
		}
	}
	
	public void sortAndShrink(){
		if(lastCompression>=list.size()){return;}
		list.sort();
		list.shrinkToUnique();
		lastCompression=list.size();
	}
	
	public IntList list=new IntList(4);
	private int lastCompression=0;
	
}