PDA

View Full Version : تبدیل الگوریتم به کد



mahdieh721
جمعه 14 خرداد 1395, 12:47 عصر
سلام دوستان من یه الگوریتم دارم که میخوام پیاده سازیش کنم یه تیکش اینه

2:FORi = 1 :nodes.countDO
3:A ← nodes[i]; // A is the current node
4:FOR j = 1 :nodes[i].edges.countDO
5:commonNeighborsCount ← 0;
6:B ← nodes[i].edges[j] // B is the current neighbor of A
7:FOR k = 1 : B.edges.countDO
8:IF(A.edges.Contains(B.edges[k]) == TRUE)
9:commonNeighborsCount++;
10:union←(A.edges.count + B.edges.count)_
– commonNeighborsCount;
11:nodes[i].edges[j].internality ← commonneighborsCount /union;
من یه کلاس دارم که این یه تابعی عضو اون کلاسه حالا به یه مشکل برخوردم:ناراحت:
خط 4 ام من چجوری باید اینو بنویسم nodes[i].edges.coun ؟ چون هم nodes , هم edges رو شی عضو کلاس تعریف کردم!!
و همین طور پیاده سازی خط 6 رو هم نمیدونم
خواهشا کمکم کنید

UfnCod3r
جمعه 14 خرداد 1395, 16:04 عصر
خب این چیه الان نوشتی الگوریتمه مثلا؟

mahdieh721
جمعه 14 خرداد 1395, 16:15 عصر
خب این چیه الان نوشتی الگوریتمه مثلا؟
الگوریتم یه برنامه برای تشخیص جوامع توی شبگه های اجتماعی رو دارم این الگوریتم یه تابعشه !!

mahdieh721
جمعه 14 خرداد 1395, 16:17 عصر
1: Phase 1: reading input network2: //Reading in the input network
3: network ← ReadInputNetwork();
4: n ← network.numberofNodes;
5: nodes ← network.nodes;
6:
7: Phase 2: initialization
8:InternalityIndicesComputation();
9://Assignment of initial labels to nodes
10: FORi = 1 :n DO
11: nodes[i].frequentLabels.add(i);
12:HubsSelectionandAgentAssignments();
13://Storage of hubs’ assigned agents in agents data structure
14://in an interleaved manner
15:AgentsIntearleavedSaver();
16:
17:Phase 3: agents Investigation
18:NetworkStructureExploration();
19:
20:phase 4 : post processing
21:CommunityCoresIdentification();
22://Finding overlapping nodes through thresholding
23://and addition of overlapping nodes to appropriate cores
24:FinalCommunitiesIdentification();
این تیکه اولشه !!!
یه سوال دیگه من باید برای node و edge کلاسای جدا تعریف کنم؟

amirtork
شنبه 15 خرداد 1395, 00:38 صبح
سلام،
با توجه به الگوریتم، edge عضوی از کلاس node هست، که البته edges یک کلاس هست با توابعی مثل count و ... .
بنابراین شما ابتدا باید کلاسی با نام edge تعریف کنید و بعد کلاسی به نام node که عضوی از نوع edge هم داخلش هست.