infomat.algorithms
Class DensityAlgorithm

java.lang.Object
  extended by infomat.algorithms.DensityAlgorithm

public class DensityAlgorithm
extends java.lang.Object

This is a first implemention of an idea. It proved not to be any good.


Nested Class Summary
private  class DensityAlgorithm.Coord
           
private  class DensityAlgorithm.IMatrixCellComparator
           
 
Field Summary
private  java.util.Vector cells
           
private static int colGroupingIdIter
           
private  java.util.HashMap<IObject,java.lang.Integer> colMap
           
private  int colNeigbours
           
private  java.util.Vector<IObject> colVec
           
private  IMatrix matrix
          Working variables
private  IMatrixCell moveCell
           
private  int moveCol
           
private  int moveKind
          Parameters
private  int moveRow
           
private static int rowGroupingIdIter
           
private  java.util.HashMap<IObject,java.lang.Integer> rowMap
           
private  int rowNeigbours
           
private  java.util.Vector<IObject> rowVec
           
 
Constructor Summary
DensityAlgorithm(IMatrix matrix)
           
 
Method Summary
 void apply()
           
static void apply(IMatrix matrix)
           
 boolean move(IMatrix matrix, java.util.Vector<IObject> rowVec, java.util.Vector<IObject> colVec)
           
private  int[] neighbourLimits(int place, int neighbours, int max)
           
private  float neighbourWeight(IMatrix matrix, int cellRow, int cellCol, java.util.Vector<IObject> rowVec, java.util.Vector<IObject> colVec)
           
private  void swap(java.util.Vector<IObject> vec, int place, int movePlace)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

moveKind

private int moveKind
Parameters


rowNeigbours

private int rowNeigbours

colNeigbours

private int colNeigbours

matrix

private IMatrix matrix
Working variables


colVec

private java.util.Vector<IObject> colVec

rowVec

private java.util.Vector<IObject> rowVec

colMap

private java.util.HashMap<IObject,java.lang.Integer> colMap

rowMap

private java.util.HashMap<IObject,java.lang.Integer> rowMap

cells

private java.util.Vector cells

moveCell

private IMatrixCell moveCell

moveRow

private int moveRow

moveCol

private int moveCol

colGroupingIdIter

private static int colGroupingIdIter

rowGroupingIdIter

private static int rowGroupingIdIter
Constructor Detail

DensityAlgorithm

public DensityAlgorithm(IMatrix matrix)
Method Detail

neighbourLimits

private int[] neighbourLimits(int place,
                              int neighbours,
                              int max)

neighbourWeight

private float neighbourWeight(IMatrix matrix,
                              int cellRow,
                              int cellCol,
                              java.util.Vector<IObject> rowVec,
                              java.util.Vector<IObject> colVec)

swap

private void swap(java.util.Vector<IObject> vec,
                  int place,
                  int movePlace)

move

public boolean move(IMatrix matrix,
                    java.util.Vector<IObject> rowVec,
                    java.util.Vector<IObject> colVec)

apply

public void apply()

apply

public static void apply(IMatrix matrix)