السلام عليكم. اعمل حاليا باستخدام BOOST على مششكل في الــGraph mining
فكرة البرنامج كالتالي:
بعد قارئة الGraphs و بنائها من ملف من الشكل
t # 0
v 0 5
v 1 3
v 2 9
e 2 1 68
e 0 1 10
e 0 2 4
t # 1
v 0 2
v 1 11
v 2 6
v 3 10
v 4 18
v 5 14
e 0 1 15
e 2 5 19
e 1 3 20
t # 2
v 0 6
v 1 11
e 0 1 13
t # 3
v 0 2
v 1 11
v 2 19
v 3 2
e 0 1 15
e 1 2 11
e 0 3 19
t # 4
v 0 1
v 1 16
v 2 14
e 0 1 8
e 1 2 5
e 0 2 19
أحاول عمل دالة ترجع الفرق بين Two graphs edges ‘لى شكل Vector:
السؤال
Mohsen Khaldoun
السلام عليكم.
اعمل حاليا باستخدام BOOST على مششكل في الــGraph mining
فكرة البرنامج كالتالي:
بعد قارئة الGraphs و بنائها من ملف من الشكل
أحاول عمل دالة ترجع الفرق بين Two graphs edges ‘لى شكل Vector:
std::vector<edge_iter> edgesdiff(Graph const& g1,Graph const& g2){ std::vector<edge_iter> model; std::vector<edge_iter> pattern; typedef graph_traits<Graph>::edge_iterator edge_iter; std::pair<edge_iter, edge_iter> ep; edge_iter ei, ei_end; for (tie(ei, ei_end) = edges(g1); ei != ei_end; ++ei){model.push_back(ei);} for (tie(ei, ei_end) = edges(g2); ei != ei_end; ++ei){model.push_back(ei);} std::set<edge_iter> s_model( model.begin(), model.end() ); std::set<edge_iter> s_pattern( pattern.begin(), pattern.end() ); std::vector<edge_iter> result; std::set_difference( s_model.begin(), s_model.end(), s_pattern.begin(), s_pattern.end(), std::back_inserter( result ) ); return result; }عند محاولة تشغيل البرنامج المشكل هذه هي النتيجة:
الرجاء مساعدتي في حل المشاكل و تشغيل لبرنامج
تم التعديل في بواسطة عبد الهادي اطويللمزيد من المعلومات هذا رابط البرنامج كاملا http://pastebin.com/xJnZHjgf
تعديل العنوان
0 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.