Author: simonetripodi
Date: Tue Jul 12 01:04:26 2011
New Revision: 1145415

URL: http://svn.apache.org/viewvc?rev=1145415&view=rev
Log:
added inline comments in add() method - and fixed the minNode replacement bug!

Modified:
    
commons/sandbox/graph/trunk/src/main/java/org/apache/commons/graph/collections/FibonacciHeap.java

Modified: 
commons/sandbox/graph/trunk/src/main/java/org/apache/commons/graph/collections/FibonacciHeap.java
URL: 
http://svn.apache.org/viewvc/commons/sandbox/graph/trunk/src/main/java/org/apache/commons/graph/collections/FibonacciHeap.java?rev=1145415&r1=1145414&r2=1145415&view=diff
==============================================================================
--- 
commons/sandbox/graph/trunk/src/main/java/org/apache/commons/graph/collections/FibonacciHeap.java
 (original)
+++ 
commons/sandbox/graph/trunk/src/main/java/org/apache/commons/graph/collections/FibonacciHeap.java
 Tue Jul 12 01:04:26 2011
@@ -81,25 +81,38 @@ public final class FibonacciHeap<E>
             throw new NullPointerException();
         }
 
+        // FIB-HEAP-INSERT(H, x)
+
+        // p[x] <- NIL
+        // child[x] <- NIL
+        // left[x] <- x
+        // right[x] <- x
+        // mark[x] <- FALSE
         FibonacciHeapNode<E> node = new FibonacciHeapNode<E>( e );
 
+        // if min[H] = NIL
         if ( minimumNode == null )
         {
+            // then min[H] <- x
             minimumNode = node;
         }
         else
         {
+            // concatenate the root list containing x with root list H
             node.setLeft( minimumNode );
             node.setRight( minimumNode.getRight() );
             minimumNode.setRight( node );
             node.getRight().setLeft( minimumNode );
 
-            if ( compare( minimumNode.getValue(), e ) < 0 )
+            // if key[x] < key[min[H]]
+            if ( compare( e, minimumNode.getValue() ) < 0 )
             {
+                // then min[H] <- x
                 minimumNode = node;
             }
         }
 
+        // n[H] <- n[H] + 1
         size++;
         trees++;
 


Reply via email to