Changeset 2651
- Timestamp:
- 11/10/08 10:48:37 (2 months ago)
- Location:
- XerialJ/trunk/xerial-core/src
- Files:
-
- 7 added
- 1 modified
-
main/java/org/xerial/util/BitVector.java (added)
-
main/java/org/xerial/util/IndexedSet.java (added)
-
main/java/org/xerial/util/graph/AdjacencyList.java (modified) (8 diffs)
-
main/java/org/xerial/util/graph/Automaton.java (added)
-
main/java/org/xerial/util/graph/AutomatonAction.java (added)
-
main/java/org/xerial/util/graph/Lattice.java (added)
-
test/java/org/xerial/util/BitVectorTest.java (added)
-
test/java/org/xerial/util/IndexedSetTest.java (added)
Legend:
- Unmodified
- Added
- Removed
-
XerialJ/trunk/xerial-core/src/main/java/org/xerial/util/graph/AdjacencyList.java
r2584 r2651 29 29 import java.util.HashMap; 30 30 import java.util.List; 31 import java.util.Map; 31 32 import java.util.NoSuchElementException; 32 33 import java.util.Set; … … 110 111 public Collection<NodeLabel> getNodeLabelSet() 111 112 { 112 return _nodeTable. values();113 return _nodeTable.getNodeLabelSet(); 113 114 } 114 115 115 116 public Collection<Integer> getNodeIDSet() 116 117 { 117 return _nodeTable. keySet();118 return _nodeTable.getNodeIDSet(); 118 119 } 119 120 … … 260 261 public String toString() 261 262 { 262 String nodeData = CollectionUtil.displayMap(_nodeTable , ":", ", ");263 String nodeData = CollectionUtil.displayMap(_nodeTable.getNodeTable(), ":", ", "); 263 264 264 265 ArrayList<String> edgeData = new ArrayList<String>(); … … 270 271 return "node: " + nodeData + "\n" + StringUtil.join(edgeData, "\n"); 271 272 } 273 272 274 273 275 } 274 276 275 class NodeTable<NodeType> extends TreeMap<Integer, NodeType>277 class NodeTable<NodeType> 276 278 { 277 279 private static final long serialVersionUID = 1L; … … 279 281 private int _numNode = 0; 280 282 283 private TreeMap<Integer, NodeType> _nodeTable = new TreeMap<Integer, NodeType>(); 281 284 private HashMap<NodeType, Integer> _nodeIDIndex = new HashMap<NodeType, Integer>(); 285 286 public NodeType get(int nodeID) 287 { 288 return _nodeTable.get(nodeID); 289 } 290 291 public Set<NodeType> getNodeLabelSet() 292 { 293 return _nodeIDIndex.keySet(); 294 } 295 296 public Set<Integer> getNodeIDSet() 297 { 298 return _nodeTable.keySet(); 299 } 300 301 public boolean containsValue(NodeType value) 302 { 303 return _nodeIDIndex.containsKey(value); 304 } 305 306 public boolean containsKey(Integer nodeID) 307 { 308 return _nodeTable.containsKey(nodeID); 309 } 310 311 public Map<Integer, NodeType> getNodeTable() 312 { 313 return _nodeTable; 314 } 315 316 public int size() 317 { 318 return _nodeTable.size(); 319 } 282 320 283 321 public int getNodeID(NodeType node) … … 289 327 public int add(int nodeID, NodeType node) 290 328 { 291 super.put(nodeID, node);329 _nodeTable.put(nodeID, node); 292 330 if (nodeID > _numNode) 293 331 _numNode = nodeID; … … 300 338 { 301 339 int newNodeID = _numNode + 1; 302 super.put(newNodeID, node);340 _nodeTable.put(newNodeID, node); 303 341 _nodeIDIndex.put(node, newNodeID); 304 342 ++_numNode; … … 309 347 { 310 348 _numNode = 0; 311 super.clear();349 _nodeTable.clear(); 312 350 _nodeIDIndex.clear(); 313 351 }


