public class SparseVector extends Object implements Serializable
Memory is only allocated for dimensions that have non-zero values.
Modifier and Type | Class and Description |
---|---|
static class |
SparseVector.NormalizingKernel
A version of the standard dot-product kernel that scales each column
independently.
|
Constructor and Description |
---|
SparseVector() |
SparseVector(int capacity) |
Modifier and Type | Method and Description |
---|---|
double |
get(int dim)
Retrieve the value at dimension dim.
|
int |
getDimAtIndex(int indx)
Retrieve the dimension at a specific index.
|
double |
getValueAtIndex(int indx)
Retrieve the value at a specific index.
|
int |
maxIndex() |
static SparseVector |
normalLengthVector(SparseVector v,
double length) |
void |
put(int dim,
double value)
Set the value at a particular dimension.
|
int |
size()
The number of used dimensions.
|
public SparseVector()
public SparseVector(int capacity)
public int size()
This is the total number of non-zero dimensions. It is not equal to the number of the highest indexed dimension.
public void put(int dim, double value)
This silently handles the case when previously there was no value at dim. It does not contract the sparse array if you set a value to zero.
dim
- the dimension to altervalue
- the new valuepublic double get(int dim)
dim
- the dimension to retrieve a value forpublic int getDimAtIndex(int indx)
E.g., if the sparse vector had dimensions 5, 11, 12, 155 set to non-zero
values then sv.getDimAtIndex(2)
would return 12.
indx
- the indexArrayIndexOutOfBoundsException
- if index >= size.public double getValueAtIndex(int indx)
E.g., if the sparse vector contained the data 5->0.1, 11->100, 12->8.5, 155->-10
then sv.geValueAtIndex(2)
would return 8.5.
indx
- the indexArrayIndexOutOfBoundsException
- if index >= size.public int maxIndex()
public static SparseVector normalLengthVector(SparseVector v, double length)
Copyright © 2014 BioJava. All rights reserved.