File: IntListCompressor.java

package info (click to toggle)
bbmap 39.20%2Bdfsg-3
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 26,024 kB
  • sloc: java: 312,743; sh: 18,099; python: 5,247; ansic: 2,074; perl: 96; makefile: 39; xml: 38
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;
	
}