alpar@1948: 2005-02-03 Version 0.5 Released klao@1945: * New features: klao@1945: - Bfs/Dfs/Dijkstra klao@1945: + query functions for the next node/edge to be processed klao@1945: + visitor interface for dfs klao@1945: - topology.h: small functions for discovering graph topology klao@1945: + connected components, strongly connected components klao@1945: + bipartiteness testing klao@1945: - Shortest paths algorithms: klao@1945: bellman_ford.h, floyd_warshall.h, johnson.h klao@1945: - Euler tour iterator for directed and undirected graphs klao@1945: - Other algorithms: klao@1945: + dag_shortest_path.h klao@1945: + fredman_tarjan.h and prim.h for min cost trees klao@1945: - Bipartite graph concept and implementations klao@1945: - Graph maps: klao@1945: + template assign operator klao@1945: + specialized iterable bool map klao@1945: + potencial difference map klao@1945: + NodeMatrixMap -- Matrix over the nodes klao@1945: - Maps: klao@1945: + IterableIntMap klao@1945: - GUI: klao@1945: + NewMap window in MapSelector klao@1945: + Algorithm window and some algorithms (eg. Kruskal) added klao@1945: - LemonReader: klao@1945: + exception on non-existent files klao@1945: - LP interface: klao@1945: + (Dual)Expr::simplify(double tolerance) added klao@1945: + getDual() klao@1945: - GraphToEps: klao@1945: + negateY() opt klao@1945: + male/female node shapes :) alpar@1947: + correct %%BoundingBox handling klao@1945: - Tools: klao@1945: + Timer can be stop()ed and (re)start()ed alpar@1947: + radix sort algorithm klao@1945: + tolerance.h for working with imprecise numbers alpar@1947: * Backward incompatibilities/changed namings: alpar@1713: - Access functions of TimeStamp/Timer alpar@1947: - Undir graph interface: findUEdge, ConUEdgeIt klao@1945: - pred -> predEdge renaming in search algorithms klao@1945: - SnapShot -> Snapshot in {List,Smart}Graph klao@1945: - NewEdgeSetAdaptor -> ListEdgeSet klao@1945: - LP: set{Obj,Row,Col}() -> {obj,row,col}() klao@1945: - "label" instead of "id" inside the LGF files klao@1945: - UndirGraph -> UGraph, UndirEdge* -> UEdge* klao@1945: - BipartiteGraph -> BpGraph, Lower/UpperNode* -> A/BNode* klao@1945: * Buxfixes in alpar@1668: - DFS alpar@1668: - Preflow klao@1945: - x86_64 connected bugfixes (lemon_reader.h) klao@1945: - lp.h klao@1945: * New demos, benchmarks and tools: klao@1945: - graph_orientation.cc: A thoroughly documented demo application klao@1945: - runningTimeTest(): a tool to measure running times more precisely klao@1945: - Demo for topology klao@1945: - counter.h: a tool to measure the number of streps of algorithms klao@1945: - Some useful scripts: check-compiler, check-integrity klao@1945: * Other changes: klao@1945: - Demos and benchmarks are not built by default now. They can be klao@1945: enabled with the --enable-demo and --enable-benchmark klao@1945: configure flags. klao@1945: - GCC 4.0.3 and ICC 9.0 compatibility alpar@1713: alpar@1668: 2005-08-27 Version 0.4 Released alpar@1668: * List of new features and changes alpar@1713: * Changed namings: alpar@1668: Wrapper -> Adaptor alpar@1668: kruskalEdgeMap() -> kruskal() alpar@1668: kruskalEdgeMap_IteratorOut() -> kruskal() alpar@1668: * BoundinBox<> alpar@1668: * operator+=() -> add() alpar@1668: + clear() alpar@1668: + More and better graph I/O functionalities alpar@1668: + High level uniform LP solver interface to CPLEX and GLKP alpar@1668: * graphToEps() alpar@1668: + Automatic node size and edge width scaling alpar@1668: + Simple color palette tool (ColorSet) alpar@1668: * Bfs/Dfs/Dijkstra alpar@1668: + Step-by-step execution alpar@1668: + Run from multiple sources alpar@1668: + Used define stop condition alpar@1668: + Improved "named parameters" alpar@1668: * Preflow alpar@1668: + Function type interface alpar@1668: + Changed interface alpar@1668: * ListGraph/SmarGraph ladanyi@1670: + split() splits a node alpar@1668: + SnapShot alpar@1668: + New map adaptors ladanyi@1670: + New convenience maps alpar@1668: + IdMap, DescriptorMap alpar@1668: + InDegMap, OutDegMap alpar@1668: + XMap, YMap alpar@1668: + Default graph maps are iterable alpar@1668: + glemon: a graph editor alpar@1668: + Some new demo codes added, the old ones got polished. alpar@1668: * Better documentation alpar@1668: * Several important bugfixes alpar@1668: * Now lemon should compile without warnings with alpar@1668: * gcc 3.3, 3.4, 4.0 alpar@1668: * Intel C++ Compiler v9.0 alpar@1668: alpar@1668: 2005-03-19 Version 0.3.1 Released alpar@1668: * This release fixes a compilation failure bug under cygwin. alpar@1668: alpar@1668: 2005-02-21 Version 0.3 released alpar@1668: * List of new features and changes alpar@1668: * Redesigned Graph infrastructures alpar@1668: + Standardized LEMON exceptions alpar@1668: + Undirected Graph alpar@1668: + Standard graph file format, input and output classes for it. alpar@1668: * head() -> target(), tail() -> source() alpar@1668: * Some standard namings have changes: alpar@1668: ValueType -> Value, alpar@1668: KeyType -> Key, alpar@1668: ReferenceType ->Reference, alpar@1668: PointerType -> Pointer alpar@1668: + GraphToEps: A simple graph drawer alpar@1668: * Better documentation alpar@1668: alpar@1668: 2004-09-30 Version 0.2 released alpar@1668: