rendered paste body/* * MatrimoniStabili.java * * Created on November 3, 2007, 4:28 PM * * To change this template, choose Tools | Template Manager * and open the template in the editor. */package org.algoritmica.alvie.algorithm;import org.algoritmica.alvie.datastructure.List;import org.algoritmica.alvie.datastructure.ListI;import org.algoritmica.alvie.datastructure.Array;import org.algoritmica.alvie.datastructure.ArrayI;import org.algoritmica.alvie.information.ComparableI;import org.algoritmica.alvie.information.IntInformation;/** * * @author Andrea Grandi */public class MatrimoniStabili<I extends ComparableI<I>>{ private ListI<IntInformation>[] m_preferita; private int[][] m_rango; private ListI<IntInformation> m_celibe; private ArrayI<IntInformation> m_abbinato; private IntInformation maschio; private IntInformation femmina; public MatrimoniStabili(ListI<IntInformation>[] preferita, int[][] rango, ListI<IntInformation> celibe, ArrayI<IntInformation> abbinato) { m_preferita = preferita; m_rango = rango; m_celibe = celibe; m_abbinato = abbinato; } public void stableMarriage() { while(m_celibe.size() != 0) { maschio = m_celibe.head(); femmina = m_preferita[maschio.intValue()].head(); } }}