/* * add the given vertex info into this vertex * combine name and weights */ public void concatVertex(SeqVertex vertex, Double w, int lastRealID) { int prevLen = getName().length(); setName(getName() + vertex.getName()); _weights.add(w); _weights.addAll(vertex.getWeights()); // System.out.println(toStringWeights()); Vector<Integer> newV = new Vector<Integer>(); if (vertex.getID() <= lastRealID) { newV.add(vertex.getID()); _prevVerticesID.add(newV); } _prevVerticesID.addAll(vertex.getPrevVerIDs()); if (vertex.getDegenerativeFreq().size() > 0) { // System.err.println(vertex.getID()+":"+vertex.getDegenerativeFreq()); // System.err.println(vertex.getID()+":"+vertex.getDegenerativeLocations()); // System.err.println(vertex.getID()+":"+vertex.getDegenerativeLetters()); // System.err.println(getID()+":"+getName()); // System.err.println(prevLen); _degenerativeLocations.add(prevLen + 1); _degenerativeFreq.addAll(vertex.getDegenerativeFreq()); _degenerativeLetters.addAll(vertex.getDegenerativeLetters()); } }
/** Remove the first letter of the vertex name, and return the corresponding weight. */ public double removeFirstLetter() { setName(getName().substring(1, getName().length())); if (_weights.isEmpty()) return -1; else return _weights.remove(0); }
/** remove all the letters except for the first */ public void removeAllButFirstLetter() { setName(_name.substring(0, 1)); }
/** Remove the last letter of the vertex name, and return the corresponding weight. */ public double removeLastLetter() { setName(getName().substring(0, getName().length() - 1)); if (_weights.isEmpty()) return -1; else return _weights.remove(_weights.size() - 1); }