(قم بالتمرير لأسفل لوصف اللغة الإنجليزية)
محاكاة مترو سانت بطرسبرغ. *Yandex Metro Clone

معالجات/معالجات. تنزيل الأصول/المحطات. يحتفظ HomeHandler أيضًا بأسماء المحطات وفرزها أبجديًا.
هيكل المحطات. json:
"st_g0" : {
"Name" : " Беговая " ,
"X" : 93 ,
"Y" : 140 ,
"Adj" : [ " st_g1 " ],
"Dist" : [ 4 ],
"Line" : " green " ,
"Shift" : " left " ,
"Dx" : 0 ,
"Dy" : 0
}الاسم ، x ، y ، الخط يعني اسم المحطة ، الموضع على xy ولون الفرع ، على التوالي. محطات adj - التي يمكن تشغيلها من هذه المحطة ، dist - الأجرة لهم ، والتحول - على أي جانب هو النص بالنسبة إلى x ، y. dx ، dy - خلط النص وفقًا لـ x ، y.
يجد FindRouteHandler (معالجات/معالجات. GO) سطرين من ، إلى من نموذج الفهرس.
تتمثل أقصر طريقة في استخدام خوارزمية dijkstra/dijkstra.go ، التي تقبل أرقام المحطات بالترتيب الأبجدي ، بإرجاع الحد الأدنى للوقت ومجموعة من أعداد المحطات المدرجة في هذا المسار.
مثال.
| من | ل | أفضل طريق | مدة |
|---|---|---|---|
| غوركي | قناة Obvodny | Gorkovskaya ، Nevsky ، Avenue ، Sennaya ، Sadovaya ، Zvenigorodskaya ، Obvodny Cannal | 18 دقيقة |

ShowruteHandler (معالجات/معالجات. GO) يبني بطاقة مترو ، وتضاف تأثير الشفافية بنسبة 80 ٪ على الأضلاع التي لم يتم تضمينها في أقصر مسار.
...
..* getIdx (s) - إرجاع أكثر "تشابه" خط S لجميع أسماء المحطات. خط S1 يشبه خط S أكثر من S2 إذا كانت مسافة Levenstein (utils.editdistance ()) بين S1 و S أقل من S2 و S.
Saint Petersburg Subway Simulator. *Yandex Metro Clone

معالجات/معالجات. GO) أحمال ASSSTES/stations.json ملف الساحرة تصف المحطات ، ويقوم ببناء الرسوم البيانية للحالات والمسافات بينهما ورسمها. كما يحفظ HomeHandler أسماء المحطات وفرزها بالترتيب الأبجدي.
هيكل المحطات. json:
"st_g0" : {
"Name" : " Беговая " ,
"X" : 93 ,
"Y" : 140 ,
"Adj" : [ " st_g1 " ],
"Dist" : [ 4 ],
"Line" : " green " ,
"Shift" : " left " ,
"Dx" : 0 ,
"Dy" : 0
}الاسم ، x ، y ، الخط يقف لاسم المحطة ، xy الموضع ولون الفرع على التوالي. ADJ هي مجموعة من الحالات التي تتصل بهذا الحالات. Dist - حان الوقت للوصول إليهم ، ويتحول - جانب النفي من النص. DX ، DY - تحول النص بواسطة X و Y.
يقرأ FindRouteHandler (معالجات/معالجات. GO) سلسلة "من" ، "إلى" من النموذج في صفحة INDEX.TMPL ، ابحث عن المحطة التي أنت Maan (ص 3) ، وأخيراً ، Searsch أفضل طريق بين من وإلى.
خوارزمية Dijkstra (dijkstra/dijkstra.go) إرجاع أقصر مسار بين العقدتين.

ShowruteHandler (معالجات/معالجات .و) يبني خريطة المترو. الحواف مع ليست في أقصر مسار شفاف.
getIdx (s) - إرجاع اسم المحطات الأكثر مماثلة إلى s. التشابه بين السلسلة S و String T هو مسافة Levenshtein من S إلى T. Levenshtein المسافة هو مقياس سلسلة لقياس الفرق بين سلسلتين.