lemon/smart_graph.h
changeset 2552 5f711e4668f5
parent 2456 717a5134ddeb
child 2553 bfced05fa852
equal deleted inserted replaced
44:18d699f6fb40 45:7b69dd7693da
   183 
   183 
   184   };
   184   };
   185 
   185 
   186   typedef GraphExtender<SmartGraphBase> ExtendedSmartGraphBase;
   186   typedef GraphExtender<SmartGraphBase> ExtendedSmartGraphBase;
   187 
   187 
   188   /// \ingroup graphs
   188   ///\ingroup graphs
   189 
   189   ///
   190   ///A smart graph class.
   190   ///\brief A smart graph class.
   191 
   191   ///
   192   ///This is a simple and fast graph implementation.
   192   ///This is a simple and fast graph implementation.
   193   ///It is also quite memory efficient, but at the price
   193   ///It is also quite memory efficient, but at the price
   194   ///that <b> it does support only limited (only stack-like)
   194   ///that <b> it does support only limited (only stack-like)
   195   ///node and edge deletions</b>.
   195   ///node and edge deletions</b>.
   196   ///It conforms to 
   196   ///It conforms to 
   569       
   569       
   570       edges[n].target = u.id;
   570       edges[n].target = u.id;
   571       edges[n | 1].target = v.id;
   571       edges[n | 1].target = v.id;
   572 
   572 
   573       edges[n].next_out = nodes[v.id].first_out;
   573       edges[n].next_out = nodes[v.id].first_out;
   574       edges[n | 1].next_out = nodes[u.id].first_out;
       
   575 	
       
   576       nodes[v.id].first_out = n;
   574       nodes[v.id].first_out = n;
       
   575 
       
   576       edges[n | 1].next_out = nodes[u.id].first_out;	
   577       nodes[u.id].first_out = (n | 1);
   577       nodes[u.id].first_out = (n | 1);
   578 
   578 
   579       return UEdge(n / 2);
   579       return UEdge(n / 2);
   580     }
   580     }
   581     
   581