[Lemon-commits] [lemon_svn] alpar: r1015 - hugo/trunk/src/work/johanna
Lemon SVN
svn at lemon.cs.elte.hu
Mon Nov 6 20:42:44 CET 2006
Author: alpar
Date: Wed Aug 4 21:04:42 2004
New Revision: 1015
Modified:
hugo/trunk/src/work/johanna/kruskal.h
Log:
- 'KruskalPairVec' is changed to 'KruskalMapInput'.
- Changes in KruskalMapVec. Still does not work.
Modified: hugo/trunk/src/work/johanna/kruskal.h
==============================================================================
--- hugo/trunk/src/work/johanna/kruskal.h (original)
+++ hugo/trunk/src/work/johanna/kruskal.h Wed Aug 4 21:04:42 2004
@@ -117,7 +117,7 @@
/// Kruskal input source.
///
template<typename Graph, typename Map>
- class KruskalPairVec
+ class KruskalMapInput
: public std::vector< std::pair<typename Graph::Edge,
typename Map::ValueType> > {
@@ -143,14 +143,14 @@
public:
// FIXME: kell ez?
- // KruskalPairVec(Parent const& p) : Parent(p) {}
+ // KruskalMapInput(Parent const& p) : Parent(p) {}
void sort() {
std::sort(this->begin(), this->end(), comparePair());
}
// FIXME: nem nagyon illik ez ide...
- KruskalPairVec(Graph const& G, Map const& m) {
+ KruskalMapInput(Graph const& G, Map const& m) {
typedef typename Graph::EdgeIt EdgeIt;
this->clear();
@@ -169,21 +169,46 @@
};
-// template <typename Map>
-// class KruskalMapVec : public std::vector<typename Map::KeyType> {
+// template<typename Graph, typename Map>
+// class KruskalMapVec {
// public:
-// typedef typename Map::KeyType KeyType;
-// typedef typename Map::ValueType ValueType;
-
-// typedef typename std::vector<KeyType> Parent;
-// typedef typename Parent::iterator iterator;
-// typedef typename Parent::const_iterator const_iterator;
-
-// private:
-
+// typedef std::pair<typename Map::KeyType, Map::ValueType> value_type;
+
+// typedef std::vector<KeyType> Container;
+// Container container;
+// std::vector<typename Map::KeyType> container
// const Map &m;
+
+
+// class iterator
+// {
+// Container::iterator i;
+// public:
+// iterator &operator ++() {++i;return *this;}
+// valuetype operator *() {return value_type(container(i),m[container(i)]);}
+// bool operator==(iterator b) {return i==b.i;}
+// iterator() {}
+// iterator(Container::iterator _i) i(_i) {}
+// };
+// class const_iterator
+// {
+// Container::const_iterator i;
+// public:
+// iterator &operator ++() {++i;return *this;}
+// valuetype operator *() {return value_type(container(i),m[container(i)]);}
+// bool operator==(iterator b) {return i==b.i;}
+// const_iterator() {}
+// const_iterator(Container::iterator _i) i(_i) {}
+// };
+// iterator begin() { return iterator(container.begin());}
+// const_iterator begin() const { return iterator(container.begin());}
+// iterator end() { return iterator(container.end());}
+// const_iterator end() const { return iterator(container.end());}
+
+// private:
+
// class compareKeys {
// const Map &m;
// public:
@@ -221,6 +246,7 @@
// ValueType& second(iterator i) { return m[*i]; }
// };
+
/* ** ** Wrapper fuggvenyek ** ** */
@@ -236,7 +262,7 @@
EdgeCostMap const& edge_costs,
RetEdgeBoolMap &ret_bool_map) {
- typedef KruskalPairVec<Graph,EdgeCostMap> InputVec;
+ typedef KruskalMapInput<Graph,EdgeCostMap> InputVec;
InputVec iv(G, edge_costs);
return kruskal(G, iv, ret_bool_map);
@@ -260,7 +286,7 @@
typedef SequenceOutput<RetIterator> OutMap;
OutMap out(ret_iterator);
- typedef KruskalPairVec<Graph, EdgeCostMap> InputVec;
+ typedef KruskalMapInput<Graph, EdgeCostMap> InputVec;
InputVec iv(G, edge_costs);
More information about the Lemon-commits
mailing list