کتابخانه‌ی استاندارد · یادگیری ماشین

گراف graph

نظریه‌ی گراف: پیمایش، کوتاه‌ترین مسیر، درخت پوشا، شار، رنگ‌آمیزی، جامعه‌ها و مرکزیت.

واردسازی گراف

این بسته بیش از دویست الگوریتم گراف دارد. گراف را با بی‌جهت جدید یا جهت‌دار جدید بسازید، یال‌ها را با افزودن یال و افزودن یال وزن‌دار بیفزایید و سپس ساخت را صدا بزنید؛ یا آن را یکجا با از فهرست یال از متن بخوانید. گره‌ها با شماره‌ی صفر تا n منهای یک شناخته می‌شوند.

از پیمایش و مؤلفه‌ها تا کوتاه‌ترین مسیر، درخت پوشا، شار و برش، جورسازی، رنگ‌آمیزی، جامعه‌ها و مرکزیت‌ها همه آماده‌اند. نتیجه را می‌توانید با به دات یا به مرمید برای رسم بیرون بدهید. الگوریتم‌هایی که مسئله‌ی سخت حل می‌کنند، مثل خوشه‌ی بیشینه و دور همیلتونی، برای گراف‌های کوچک مناسب‌اند.

گونه‌ها

شبکه شار FlowNet

ساختار شبکه شار
شبکه‌ی شار با ظرفیت و هزینه.
نامانگلیسیگونهتوضیح
nnصحیح = 0شمار گره‌ها.
headheadوکتور<صحیح>آغاز کمان‌های هر گره.
totoوکتور<صحیح>مقصد کمان‌ها.
capcapوکتور<اعشار۶۴>ظرفیت باقی‌مانده.
costcostوکتور<اعشار۶۴>هزینه.
origorigوکتور<اعشار۶۴>ظرفیت اصلی.
nxtnxtوکتور<صحیح>کمان بعدی.
graph-Flow.salam
واردسازی گراف

روال فهرست(متن: رشته): وکتور<صحیح>:
    ناپایا خروجی := وکتور {} برگردان وکتور<صحیح>
    هر عدد در متن.بشکاف(" "):
        خروجی.بیفزا(عدد.به صحیح())
    پایان
    برگشت خروجی
پایان


روال صحیح‌ها(بردار: وکتور<صحیح>): رشته:
    ناپایا متن := "["
    تکرار بردار.طول() در ش:
        اگر ش > ۰:
            متن += " "
        پایان
        متن += "" + بردار.دریافت(ش)
    پایان
    برگشت متن + "]"
پایان


روال ریشه:
    ناپایا شبکه := گراف.شبکه شار جدید(۴)
    ی := شبکه.افزودن کمان(۰، ۱، ۳.۰)
    _ := شبکه.افزودن کمان(۰، ۲، ۲.۰)
    _ := شبکه.افزودن کمان(۱، ۳، ۲.۰)
    _ := شبکه.افزودن کمان(۲، ۳، ۳.۰)
    _ := شبکه.افزودن یال(۱، ۲، ۱.۰)
    سرچاپ شبکه.شمار کمان()، گراف.بیشینه شار(شبکه، ۰، ۳)، شبکه.شار روی(ی)
    شبکه.بازنشانی()
    سرچاپ گراف.بیشینه شار ادموندز کارپ(شبکه، ۰، ۳)
    شبکه.بازنشانی()
    ناپایا سمت := وکتور {} برگردان وکتور<منطقی>
    سرچاپ گراف.کمینه برش(شبکه، ۰، ۳، سمت)، سمت.دریافت(۰)، سمت.دریافت(۳)
    ناپایا هزینه‌دار := گراف.شبکه شار جدید(۳)
    _ := هزینه‌دار.افزودن کمان هزینه‌دار(۰، ۱، ۲.۰، ۱.۰)
    _ := هزینه‌دار.افزودن کمان هزینه‌دار(۰، ۲، ۲.۰، ۵.۰)
    _ := هزینه‌دار.افزودن کمان هزینه‌دار(۱، ۲، ۱.۰، ۱.۰)
    ناپایا فرستاده := ۰.۰
    سرچاپ گراف.شار کم‌هزینه(هزینه‌دار، ۰، ۲، ۲.۰، فرستاده)، فرستاده
    شبکه.آزادسازی()
    ناپایا جاده‌ها := گراف.از فهرست یال("0 1 3\n0 2 2\n1 3 2\n2 3 3\n1 2 1"، ۴، درست)
    ناپایا برش := وکتور {} برگردان وکتور<صحیح>
    سرچاپ گراف.مقدار بیشینه شار(جاده‌ها، ۰، ۳)، گراف.یال‌های کمینه برش(جاده‌ها، ۰، ۳، برش)، صحیح‌ها(برش)، گراف.شار از گراف(جاده‌ها).n
    ناپایا دور := گراف.گراف دور(۵)
    سرچاپ گراف.کمینه برش سراسری(دور)، گراف.همبندی یالی(دور)، گراف.همبندی رأسی(گراف.گراف کامل(۴))

    ناپایا دوبخشی := گراف.از فهرست یال("0 3\n0 4\n1 3\n2 5"، ۶، نادرست)
    ناپایا جفت := وکتور {} برگردان وکتور<صحیح>
    سرچاپ گراف.جورسازی دوبخشی(دوبخشی، جفت)، صحیح‌ها(جفت)، گراف.جورسازی بیشینه‌ای(دور، جفت)
    ناپایا پوشش := وکتور {} برگردان وکتور<منطقی>
    سرچاپ گراف.کمینه پوشش رأسی(دوبخشی، پوشش)، گراف.بیشینه مجموعه مستقل دوبخشی(دوبخشی، پوشش)، گراف.پوشش رأسی حریصانه(دور، پوشش)
    سرچاپ صحیح‌ها(گراف.بیشینه خوشه(گراف.گراف کامل(۴)))، گراف.عدد خوشه(دور)، صحیح‌ها(گراف.بیشینه مجموعه مستقل(دور))، گراف.عدد استقلال(دور)، گراف.عدد پوشش رأسی(دور)

    رنگ := گراف.رنگ‌آمیزی حریصانه طبیعی(دور)
    سرچاپ صحیح‌ها(رنگ)، گراف.شمار رنگ(رنگ)، گراف.رنگ‌آمیزی معتبر است(دور، رنگ)، گراف.عدد رنگی(دور)، گراف.عدد رنگی(گراف.گراف پترسن())
    سرچاپ صحیح‌ها(گراف.رنگ‌آمیزی حریصانه(دور، فهرست("4 3 2 1 0")))، صحیح‌ها(گراف.ولش پاول(دور))، صحیح‌ها(گراف.دی‌سچور(دور))
    سرچاپ صحیح‌ها(گراف.رنگ‌آمیزی یالی حریصانه(گراف.گراف ستاره(۴)))، گراف.شمار رنگ‌آمیزی‌ها(گراف.گراف مسیر(۳)، ۳)

    ناپایا جامعه := گراف.از فهرست یال("0 1\n1 2\n2 0\n3 4\n4 5\n5 3\n2 3"، ۶، نادرست)
    ناپایا زنده := وکتور {} برگردان وکتور<منطقی>
    سرچاپ گراف.هسته کا(جامعه، ۲، زنده)، صحیح‌ها(گراف.شماره‌های هسته(جامعه))، گراف.تباهیدگی(جامعه)
    ناپایا گروه := وکتور {} برگردان وکتور<صحیح>
    سرچاپ گراف.لوون(جامعه، گروه)، صحیح‌ها(گروه)
    سرچاپ (گراف.پیمانگی(جامعه، گروه) * ۱۰۰.۰ + ۰.۵) برگردان صحیح
    سرچاپ گراف.انتشار برچسب(جامعه، گروه) >= ۱، گراف.گیروان نیومن(جامعه، ۲، گروه)، صحیح‌ها(گروه)
پایان
خروجی10 5 3 5 5 true false 7 2 5 5 [0 1] 4 2 2 3 3 [4 3 5 1 0 2] 2 3 3 4 [0 1 2 3] 2 [0 2] 2 3 [0 1 0 1 2] 3 true 3 3 [2 1 0 1 0] [0 2 1 0 1] [0 1 0 1 2] [0 1 2] 12 6 [2 2 2 2 2 2] 2 2 [0 0 0 1 1 1] 36 true 2 [0 0 0 1 1 1]

شمار کمان arc_count

روال شمار کمان(): صحیح
شمار کمان‌ها، با کمان‌های برگشتی.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Flow.salam

افزودن کمان add_arc

روال افزودن کمان(u: صحیح، v: صحیح، c: اعشار۶۴): صحیح
کمان جهت‌دار با ظرفیت.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Flow.salam

افزودن کمان هزینه‌دار add_cost_arc

روال افزودن کمان هزینه‌دار(u: صحیح، v: صحیح، c: اعشار۶۴، k: اعشار۶۴): صحیح
کمان با ظرفیت و هزینه‌ی واحد.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Flow.salam

افزودن یال add_edge

روال افزودن یال(u: صحیح، v: صحیح، c: اعشار۶۴): صحیح
یال بی‌جهت با ظرفیت.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Flow.salam

شار روی flow_on

روال شار روی(e: صحیح): اعشار۶۴
شار روی کمان.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Flow.salam

بازنشانی reset

روال بازنشانی()
شارها را صفر می‌کند.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Flow.salam

آزادسازی free

روال آزادسازی()
آزاد می‌کند.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Flow.salam

ماتریس Matrix

ساختار ماتریس
ماتریس اعشاری ساده‌ی این بسته.
نامانگلیسیگونهتوضیح
rowsrowsصحیح = 0سطرها.
colscolsصحیح = 0ستون‌ها.
aaوکتور<اعشار۶۴>درایه‌ها.
graph-Build.salam
واردسازی گراف

روال فهرست(متن: رشته): وکتور<صحیح>:
    ناپایا خروجی := وکتور {} برگردان وکتور<صحیح>
    هر عدد در متن.بشکاف(" "):
        خروجی.بیفزا(عدد.به صحیح())
    پایان
    برگشت خروجی
پایان


روال صحیح‌ها(بردار: وکتور<صحیح>): رشته:
    ناپایا متن := "["
    تکرار بردار.طول() در ش:
        اگر ش > ۰:
            متن += " "
        پایان
        متن += "" + بردار.دریافت(ش)
    پایان
    برگشت متن + "]"
پایان


روال ریشه:
    ناپایا گ := گراف.بی‌جهت جدید(۴)
    _ := گ.افزودن یال(۰، ۱)
    _ := گ.افزودن یال وزن‌دار(۱، ۲، ۲.۵)
    ی := گ.افزودن یال(۲، ۳)
    ر := گ.افزودن گره()
    گ.افزودن گره‌ها(۱)
    _ := گ.افزودن یال(۳، ر)
    گ.تنظیم وزن(ی، ۴.۰)
    گ.تنظیم نام(۰، "تهران")
    گ.ساخت()
    سرچاپ گ.مرتبه()، گ.اندازه()، گ.نام(۰)، گ.directed، گ.built
    سرچاپ گ.سر یال(ی)، گ.ته یال(ی)، گ.وزن یال(ی)، گ.وزن میان(۱، ۲)، گ.دارای یال(۲، ۱)، گ.یافتن یال(۰، ۳)
    سرچاپ گ.درجه(۲)، گ.درجه خروجی(۲)، گ.درجه ورودی(۲)، صحیح‌ها(گ.همسایگان(۲))
    تکرار گ.آغاز مجاورت(۱) تا گ.پایان مجاورت(۱) در ک:
        سرچاپ گ.گره مجاور(ک)، گ.یال مجاور(ک)، گ.وزن مجاور(ک)
    پایان

    ناپایا ج := گراف.جهت‌دار جدید(۳)
    _ := ج.افزودن یال(۰، ۱)
    _ := ج.افزودن یال(۱، ۲)
    _ := ج.افزودن یال(۲، ۲)
    _ := ج.افزودن یال(۰، ۱)
    ج.ساخت()
    تکرار ج.آغاز ورودی(۱) تا ج.پایان ورودی(۱) در ک:
        سرچاپ "ورودی"، ج.گره ورودی(ک)، ج.یال ورودی(ک)
    پایان
    سرچاپ گراف.شمار طوقه(ج)، گراف.دارای طوقه(ج)، گراف.شمار یال موازی(ج)، گراف.ساده است(ج)
    ناپایا ساده := گراف.ساده‌سازی(ج)
    ناپایا بی‌طوقه := گراف.حذف طوقه‌ها(ج)
    سرچاپ ساده.اندازه()، بی‌طوقه.اندازه()، گراف.وزن کل(گ)
    سرچاپ گراف.ترانهاده(ج).دارای یال(۱، ۰)، گراف.برعکس(ج).دارای یال(۲، ۱)، گراف.به بی‌جهت(ج).directed، گراف.به جهت‌دار(گ).اندازه()
    عام := گراف.جدید(۲، درست)
    سرچاپ عام.directed، گراف.همانندسازی(گ).اندازه()
    ناپایا نگه := وکتور {} برگردان وکتور<منطقی>
    گراف.پرکردن منطقی(نگه، گ.مرتبه()، درست)
    نگه.بنشان(۰، نادرست)
    ناپایا نگاشت := وکتور {} برگردان وکتور<صحیح>
    سرچاپ گراف.زیرگراف(گ، نگه).مرتبه()، گراف.زیرگراف با نگاشت(گ، نگه، نگاشت).اندازه()، صحیح‌ها(نگاشت)
    ناپایا یال‌ها := وکتور {} برگردان وکتور<منطقی>
    گراف.پرکردن منطقی(یال‌ها، گ.اندازه()، نادرست)
    یال‌ها.بنشان(۰، درست)
    سرچاپ گراف.زیرگراف یالی(گ، یال‌ها).اندازه()، گراف.مکمل(گراف.گراف مسیر(۴)).اندازه()
    ناپایا الف := گراف.گراف مسیر(۳)
    ناپایا ب := گراف.گراف دور(۳)
    سرچاپ گراف.اجتماع(الف، ب).اندازه()، گراف.اجتماع مجزا(الف، ب).مرتبه()، گراف.اشتراک(الف، ب).اندازه()، گراف.گراف یالی(ب).اندازه()

    سرها := فهرست("0 1 2")
    تهها := فهرست("1 2 0")
    ناپایا از یال := گراف.از یال‌ها(۳، سرها، تهها، درست)
    سرچاپ از یال.اندازه()
    ناپایا متنی := گراف.از فهرست یال("0 1 2.5\n1 2"، ۳، نادرست)
    سرچاپ متنی.وزن میان(۰، ۱)
    سرچاپ گراف.به فهرست یال(متنی)
    سرچاپ گراف.به فهرست مجاورت(متنی)
    سرچاپ گراف.به متن ماتریس(متنی)
    سرچاپ گراف.به دات(متنی)
    سرچاپ گراف.به مرمید(متنی)
    سرچاپ گراف.به جیسون(متنی)
    سرچاپ گراف.توصیف(متنی)
    سرچاپ گراف.نزدیک است(۰.۱ + ۰.۲، ۰.۳)، گراف.بی‌نهایت گراف > ۱۰۰۰.۰، گراف.هیچ

    سرچاپ گراف.گراف تهی(۳).اندازه()، گراف.گراف کامل(۴).اندازه()، گراف.دوبخشی کامل(۲، ۳).اندازه()، گراف.گراف ستاره(۴).اندازه()، گراف.گراف چرخ(۵).اندازه()
    سرچاپ گراف.گراف شبکه(۲، ۳).اندازه()، گراف.گراف مکعبی(۳).اندازه()، گراف.گراف پترسن().اندازه()، گراف.گراف دوری(۶، فهرست("1 2")).اندازه()، گراف.درخت متوازن(۲، ۲).مرتبه()
    سرچاپ گراف.اردوش رنی(۱۰، ۰.۵).مرتبه()، گراف.گراف تصادفی(۱۰، ۱۵).اندازه()، گراف.درخت تصادفی(۸).اندازه()، گراف.باراباشی آلبرت(۲۰، ۲).مرتبه()، گراف.واتس استروگاتز(۲۰، ۴، ۰.۱).مرتبه()
    گ.آزادسازی()
پایان
خروجی6 4 تهران false true 2 3 4 2.5 true -1 2 2 2 [1 3] 0 0 1 2 1 2.5 1 1 2.5 ورودی 0 0 ورودی 0 3 ورودی 1 1 1 true 1 false 2 3 8.5 true true false 8 true 4 5 3 [-1 0 1 2 3 4] 1 3 5 6 2 3 3 2.5 0 1 2.5 1 2 1 0: 1 1: 0 2 2: 1 0 1 0 1 0 1 0 1 0 graph G { "0"; "1"; "2"; "0" -- "1" [label="2.5"]; "1" -- "2"; } graph LR 0 --- 1 1 --- 2 {"directed":false,"nodes":[{"id":0,"name":"0"},{"id":1,"name":"1"},{"id":2,"name":"2"}],"links":[{"source":0,"target":1,"weight":2.5},{"source":1,"target":2,"weight":1}]} n=3 m=2 undirected components=1 simple bipartite tree true true -1 0 6 6 3 8 7 12 15 12 7 10 15 7 20 20

عنصر at

روال عنصر(i: صحیح، j: صحیح): اعشار۶۴
درایه.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

تنظیم set

روال تنظیم(i: صحیح، j: صحیح، v: اعشار۶۴)
تنظیم.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

افزودن در add_at

روال افزودن در(i: صحیح، j: صحیح، v: اعشار۶۴)
افزودن به درایه.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

رد trace

روال رد(): اعشار۶۴
رد.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

مجموع سطر row_sum

روال مجموع سطر(i: صحیح): اعشار۶۴
مجموع سطر.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

آزادسازی free

روال آزادسازی()
آزاد می‌کند.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

ماتریس صحیح IntMatrix

ساختار ماتریس صحیح
ماتریس صحیح.
نامانگلیسیگونهتوضیح
rowsrowsصحیح = 0سطرها.
colscolsصحیح = 0ستون‌ها.
aaوکتور<صحیح>درایه‌ها.
graph-Paths.salam
واردسازی گراف

روال فهرست(متن: رشته): وکتور<صحیح>:
    ناپایا خروجی := وکتور {} برگردان وکتور<صحیح>
    هر عدد در متن.بشکاف(" "):
        خروجی.بیفزا(عدد.به صحیح())
    پایان
    برگشت خروجی
پایان


روال صحیح‌ها(بردار: وکتور<صحیح>): رشته:
    ناپایا متن := "["
    تکرار بردار.طول() در ش:
        اگر ش > ۰:
            متن += " "
        پایان
        متن += "" + بردار.دریافت(ش)
    پایان
    برگشت متن + "]"
پایان


روال اعشاری‌ها(بردار: وکتور<اعشار۶۴>): رشته:
    ناپایا متن := "["
    تکرار بردار.طول() در ش:
        اگر ش > ۰:
            متن += " "
        پایان
        متن += "" + ((بردار.دریافت(ش) * ۱۰۰.۰ + ۱۰۰۰۰۰.۵) برگردان صحیح - ۱۰۰۰۰۰)
    پایان
    برگشت متن + "]/100"
پایان

روال ریشه:
    ناپایا شهرها := گراف.از فهرست یال("0 1 4\n0 2 1\n2 1 2\n1 3 1\n2 3 5"، ۴، نادرست)
    ناپایا فاصله := وکتور {} برگردان وکتور<اعشار۶۴>
    ناپایا والد := وکتور {} برگردان وکتور<صحیح>
    سرچاپ گراف.دایکسترا(شهرها، ۰، فاصله، والد)، اعشاری‌ها(فاصله)، صحیح‌ها(والد)
    سرچاپ اعشاری‌ها(گراف.فاصله دایکسترا(شهرها، ۰))، صحیح‌ها(گراف.کوتاه‌ترین مسیر(شهرها، ۰، ۳))، گراف.طول کوتاه‌ترین مسیر(شهرها، ۰، ۳)
    ناپایا تخمین := وکتور {} برگردان وکتور<اعشار۶۴>
    گراف.پرکردن اعشاری(تخمین، ۴، ۰.۰)
    سرچاپ صحیح‌ها(گراف.ای‌استار(شهرها، ۰، ۳، تخمین))، اعشاری‌ها(گراف.کوتاه‌ترین طول‌ها(شهرها، ۰، ۳، ۳))
    فلوید := گراف.فلوید وارشال(شهرها)
    ناپایا بعدی := گراف.ماتریس صحیح جدید(۰، ۰، ۰)
    فلوید۲ := گراف.فلوید وارشال با مسیر(شهرها، بعدی)
    سرچاپ فلوید.عنصر(۰، ۳)، فلوید۲.عنصر(۳، ۰)، صحیح‌ها(گراف.مسیر فلوید(بعدی، ۰، ۳))، گراف.جانسون(شهرها).عنصر(۰، ۱)
    ناپایا صفریک := گراف.از فهرست یال("0 1 0\n1 2 1\n0 2 1"، ۳، درست)
    سرچاپ گراف.پیمایش صفر یک(صفریک، ۰، فاصله، والد)، اعشاری‌ها(فاصله)

    ناپایا منفی := گراف.از فهرست یال("0 1 1\n1 2 -2\n2 0 0.5"، ۳، درست)
    سرچاپ گراف.بلمن فورد(منفی، ۰، فاصله، والد)، گراف.دارای دور منفی(منفی)، صحیح‌ها(گراف.یافتن دور منفی(منفی))

    ناپایا پروژه := گراف.از فهرست یال("0 1 3\n0 2 2\n1 3 4\n2 3 1"، ۴، درست)
    سرچاپ گراف.کوتاه‌ترین مسیر بی‌دور(پروژه، ۰، فاصله، والد)، اعشاری‌ها(فاصله)
    سرچاپ گراف.بلندترین مسیر بی‌دور(پروژه، ۰، فاصله، والد)، اعشاری‌ها(فاصله)، صحیح‌ها(گراف.مسیر بحرانی(پروژه))
    سرچاپ گراف.شمار مسیرها(پروژه، ۰، ۳)، اعشاری‌ها(گراف.شمارش مسیرها(پروژه، ۰))
    بستار := گراف.بستار تعدی(پروژه)
    سرچاپ بستار.عنصر(۰، ۳)، بستار.عنصر(۳، ۰)، گراف.کاهش تعدی(گراف.از فهرست یال("0 1\n1 2\n0 2"، ۳، درست)).اندازه()
    ناپایا لایه := وکتور {} برگردان وکتور<صحیح>
    سرچاپ گراف.لایه‌های توپولوژیک(پروژه، لایه)، صحیح‌ها(لایه)، گراف.ترتیب کلی است(گراف.از فهرست یال("0 1\n1 2"، ۳، درست))
    سرچاپ گراف.شمار گشت(گراف.گراف دور(۴)، ۲، ۰، ۰)

    ناپایا دور := گراف.گراف دور(۴)
    سرچاپ گراف.دارای دور اویلری(دور)، صحیح‌ها(گراف.دور اویلری(دور))، گراف.دارای مسیر اویلری(گراف.گراف مسیر(۳))، صحیح‌ها(گراف.مسیر اویلری(گراف.گراف مسیر(۳)))
    سرچاپ گراف.دارای دور همیلتونی(دور)، صحیح‌ها(گراف.دور همیلتونی(دور))، صحیح‌ها(گراف.مسیر همیلتونی(گراف.گراف مسیر(۳)))
    ناپایا کامل := گراف.بی‌جهت جدید(۴)
    هر یال در ["0 1 1"، "0 2 4"، "0 3 3"، "1 2 2"، "1 3 5"، "2 3 1"]:
        ناپایا ج := فهرست(یال)
        _ := کامل.افزودن یال وزن‌دار(ج.دریافت(۰)، ج.دریافت(۱)، ج.دریافت(۲) برگردان اعشار۶۴)
    پایان
    کامل.ساخت()
    ناپایا تور := گراف.نزدیک‌ترین همسایه(کامل، ۰)
    سرچاپ صحیح‌ها(تور)، گراف.طول تور(کامل، تور)، گراف.دوبهینه(کامل، تور)، گراف.طول تور(کامل، گراف.ابتکاری فروشنده دوره‌گرد(کامل، ۰))
پایان
خروجیtrue [0 300 100 400]/100 [-1 2 0 1] [0 300 100 400]/100 [0 2 1 3] 4 [0 2 1 3] [400 500 600]/100 4 4 [0 2 1 3] 3 true [0 0 100]/100 false true [1 2 0] true [0 300 200 300]/100 true [0 300 200 700]/100 [0 1 3] 2 [100 100 100 200]/100 1 0 2 3 [0 1 1 2] true 2 true [0 1 2 3 0] true [0 1 2] true [0 1 2 3] [0 1 2] [0 1 2 3] 7 7 7

عنصر at

روال عنصر(i: صحیح، j: صحیح): صحیح
درایه.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Paths.salam

تنظیم set

روال تنظیم(i: صحیح، j: صحیح، v: صحیح)
تنظیم.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Paths.salam

آزادسازی free

روال آزادسازی()
آزاد می‌کند.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Paths.salam

گراف Graph

ساختار گراف
گراف: گره‌ها با شماره‌ی ۰ تا n منهای یک و یال‌ها، جهت‌دار یا بی‌جهت، با وزن اختیاری. پس از افزودن یال‌ها ساخت را صدا بزنید.
نامانگلیسیگونهتوضیح
directeddirectedمنطقی = نادرستجهت‌دار است.
nnصحیح = 0شمار گره‌ها.
eueuوکتور<صحیح>سر یال‌ها.
evevوکتور<صحیح>ته یال‌ها.
ewewوکتور<اعشار۶۴>وزن یال‌ها.
namesnamesوکتور<رشته>نام گره‌ها.
offoffوکتور<صحیح>آغاز فهرست مجاورت هر گره.
nbrnbrوکتور<صحیح>گره‌های مجاور.
eixeixوکتور<صحیح>یال‌های مجاور.
roffroffوکتور<صحیح>آغاز فهرست ورودی هر گره.
rnbrrnbrوکتور<صحیح>گره‌های ورودی.
reixreixوکتور<صحیح>یال‌های ورودی.
builtbuiltمنطقی = نادرستفهرست‌های مجاورت ساخته شده‌اند.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

افزودن گره add_node

روال افزودن گره(): صحیح
گره تازه و شماره‌اش.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

افزودن گره‌ها add_nodes

روال افزودن گره‌ها(k: صحیح)
k گره تازه.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

افزودن یال add_edge

روال افزودن یال(u: صحیح، v: صحیح): صحیح
یال با وزن یک؛ شماره‌ی یال را برمی‌گرداند.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

افزودن یال وزن‌دار add_weighted

روال افزودن یال وزن‌دار(u: صحیح، v: صحیح، w: اعشار۶۴): صحیح
یال وزن‌دار.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

مرتبه order

روال مرتبه(): صحیح
شمار گره‌ها.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

اندازه size

روال اندازه(): صحیح
شمار یال‌ها.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

سر یال edge_from

روال سر یال(e: صحیح): صحیح
سر یال.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

ته یال edge_to

روال ته یال(e: صحیح): صحیح
ته یال.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

وزن یال edge_weight

روال وزن یال(e: صحیح): اعشار۶۴
وزن یال.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

تنظیم وزن set_weight

روال تنظیم وزن(e: صحیح، w: اعشار۶۴)
وزن یال را تنظیم می‌کند.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

تنظیم نام set_name

روال تنظیم نام(u: صحیح، s: رشته)
نام گره را تنظیم می‌کند.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

نام name

روال نام(u: صحیح): رشته
نام گره؛ اگر نباشد، شماره‌اش.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

ساخت build

روال ساخت()
فهرست‌های مجاورت را می‌سازد؛ پس از افزودن یال‌ها.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

آغاز مجاورت adj_start

روال آغاز مجاورت(u: صحیح): صحیح
آغاز همسایه‌های خروجی گره در فهرست مجاورت.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

پایان مجاورت adj_stop

روال پایان مجاورت(u: صحیح): صحیح
پایان همسایه‌های خروجی.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

گره مجاور adj_node

روال گره مجاور(k: صحیح): صحیح
گره همسایه در جای k.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

یال مجاور adj_edge

روال یال مجاور(k: صحیح): صحیح
یال در جای k.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

وزن مجاور adj_weight

روال وزن مجاور(k: صحیح): اعشار۶۴
وزن در جای k.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

آغاز ورودی in_start

روال آغاز ورودی(u: صحیح): صحیح
آغاز همسایه‌های ورودی.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

پایان ورودی in_stop

روال پایان ورودی(u: صحیح): صحیح
پایان همسایه‌های ورودی.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

گره ورودی in_node

روال گره ورودی(k: صحیح): صحیح
گره ورودی در جای k.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

یال ورودی in_edge

روال یال ورودی(k: صحیح): صحیح
یال ورودی در جای k.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

درجه خروجی out_degree

روال درجه خروجی(u: صحیح): صحیح
درجه‌ی خروجی.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

درجه ورودی in_degree

روال درجه ورودی(u: صحیح): صحیح
درجه‌ی ورودی.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

درجه degree

روال درجه(u: صحیح): صحیح
درجه.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

دارای یال has_edge

روال دارای یال(u: صحیح، v: صحیح): منطقی
یال u به v هست.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

یافتن یال find_edge

روال یافتن یال(u: صحیح، v: صحیح): صحیح
شماره‌ی یال u به v؛ اگر نباشد، ۱-.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

وزن میان weight_between

روال وزن میان(u: صحیح، v: صحیح): اعشار۶۴
وزن یال u به v.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

همسایگان neighbors

روال همسایگان(u: صحیح): وکتور<صحیح>
همسایه‌های گره.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

آزادسازی free

روال آزادسازی()
آزاد می‌کند.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

نمایه نیای مشترک LCAIndex

ساختار نمایه نیای مشترک
نمایه‌ی نیای مشترک.
نامانگلیسیگونهتوضیح
nnصحیح = 0شمار گره‌ها.
levelslevelsصحیح = 0شمار سطح‌های دوبرابرسازی.
depthdepthوکتور<صحیح>عمق هر گره.
upupوکتور<صحیح>جدول نیاها.
graph-Trees.salam
واردسازی گراف

روال صحیح‌ها(بردار: وکتور<صحیح>): رشته:
    ناپایا متن := "["
    تکرار بردار.طول() در ش:
        اگر ش > ۰:
            متن += " "
        پایان
        متن += "" + بردار.دریافت(ش)
    پایان
    برگشت متن + "]"
پایان


روال ریشه:
    ناپایا شبکه := گراف.از فهرست یال("0 1 4\n0 2 1\n1 2 2\n1 3 5\n2 3 8\n3 4 3"، ۵، نادرست)
    ناپایا برگزیده := وکتور {} برگردان وکتور<صحیح>
    سرچاپ گراف.کروسکال(شبکه، برگزیده)، صحیح‌ها(برگزیده)
    سرچاپ گراف.درخت پوشای بیشینه(شبکه، برگزیده)، صحیح‌ها(برگزیده)
    ناپایا والد := وکتور {} برگردان وکتور<صحیح>
    سرچاپ گراف.پریم(شبکه، ۰، والد)، صحیح‌ها(والد)، گراف.بوروفکا(شبکه، برگزیده)، گراف.وزن درخت پوشا(شبکه)
    ناپایا درخت := گراف.درخت پوشای کمینه(شبکه)
    سرچاپ درخت.اندازه()، گراف.درخت است(درخت)، گراف.جنگل است(درخت)، گراف.درخت است(شبکه)، گراف.توافق پوشا(شبکه)، گراف.شمار درخت پوشا(گراف.گراف کامل(۴))

    ناپایا ترتیب := وکتور {} برگردان وکتور<صحیح>
    گراف.ریشه‌دار کردن(درخت، ۰، والد، ترتیب)
    سرچاپ صحیح‌ها(والد)، صحیح‌ها(ترتیب)، صحیح‌ها(گراف.اندازه زیردرخت‌ها(درخت، ۰))
    ناپایا سرها := وکتور {} برگردان وکتور<صحیح>
    سرچاپ گراف.قطر درخت(درخت، سرها)، صحیح‌ها(سرها)، صحیح‌ها(گراف.مرکز درخت(درخت))، صحیح‌ها(گراف.مرکز ثقل درخت(درخت))
    ناپایا نیا := گراف.ساخت نیای مشترک(درخت، ۰)
    سرچاپ گراف.نیای مشترک(نیا، ۳، ۴)، گراف.نیای مشترک(نیا، ۴، ۲)، گراف.فاصله درختی(نیا، ۴، ۲)، نیا.نیا(۰، ۴)، نیا.n، نیا.levels > ۰
    نیا.آزادسازی()

    پروفر := گراف.کد پروفر(درخت)
    سرچاپ صحیح‌ها(پروفر)، گراف.کدگشایی پروفر(پروفر).اندازه()، گراف.شمار درخت برچسب‌دار(۵)
    سرچاپ گراف.درخت‌های یکریخت(گراف.گراف مسیر(۴)، گراف.گراف ستاره(۴))، گراف.درخت‌های یکریخت(درخت، گراف.کدگشایی پروفر(پروفر))
    سرچاپ گراف.شکل متعارف درخت(گراف.گراف ستاره(۳))، گراف.درخت به رشته(درخت، ۰)
پایان
خروجی11 [1 2 5 3] 20 [4 3 0 5] 11 [-1 2 0 1 3] 11 11 4 true true false true 16 [-1 2 0 1 3] [0 2 1 3 4] [5 3 4 2 1] 4 [4 0] [1] [1] 3 2 3 3 5 true [2 1 3] 4 125 false true (()()) 0(2(1(3(4))))

نیا ancestor

روال نیا(k: صحیح، v: صحیح): صحیح
نیای سطح k گره.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Trees.salam

آزادسازی free

روال آزادسازی()
آزاد می‌کند.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Trees.salam

هرم کمینه MinHeap

ساختار هرم کمینه
هرم کمینه با کلید اعشاری و مقدار صحیح.
نامانگلیسیگونهتوضیح
keykeyوکتور<اعشار۶۴>کلیدها.
valvalوکتور<صحیح>مقدارها.
graph-Analysis.salam
واردسازی گراف

روال فهرست(متن: رشته): وکتور<صحیح>:
    ناپایا خروجی := وکتور {} برگردان وکتور<صحیح>
    هر عدد در متن.بشکاف(" "):
        خروجی.بیفزا(عدد.به صحیح())
    پایان
    برگشت خروجی
پایان


روال صحیح‌ها(بردار: وکتور<صحیح>): رشته:
    ناپایا متن := "["
    تکرار بردار.طول() در ش:
        اگر ش > ۰:
            متن += " "
        پایان
        متن += "" + بردار.دریافت(ش)
    پایان
    برگشت متن + "]"
پایان


روال اعشاری‌ها(بردار: وکتور<اعشار۶۴>): رشته:
    ناپایا متن := "["
    تکرار بردار.طول() در ش:
        اگر ش > ۰:
            متن += " "
        پایان
        متن += "" + ((بردار.دریافت(ش) * ۱۰۰.۰ + ۱۰۰۰۰۰.۵) برگردان صحیح - ۱۰۰۰۰۰)
    پایان
    برگشت متن + "]/100"
پایان

روال گرد(عدد: اعشار۶۴): صحیح:
    برگشت (عدد * ۱۰۰.۰ + ۱۰۰۰۰۰.۵) برگردان صحیح - ۱۰۰۰۰۰
پایان

روال ریشه:
    ناپایا گ := گراف.از فهرست یال("0 1\n0 2\n1 2\n2 3\n3 4"، ۵، نادرست)
    سرچاپ گرد(گراف.چگالی(گ))، گرد(گراف.میانگین درجه(گ))، گراف.بیشینه درجه(گ)، گراف.کمینه درجه(گ)، صحیح‌ها(گراف.دنباله درجه(گ))، صحیح‌ها(گراف.بافت‌نگار درجه(گ))
    سرچاپ گراف.منتظم است(گراف.گراف دور(۵))، گراف.کامل است(گراف.گراف کامل(۳))، گراف.برون‌مرکزی(گ، ۴)، صحیح‌ها(گراف.همه برون‌مرکزی‌ها(گ))
    سرچاپ گراف.قطر(گ)، گراف.شعاع(گ)، صحیح‌ها(گراف.مرکز(گ))، صحیح‌ها(گراف.پیرامون(گ))، گرد(گراف.میانگین طول مسیر(گ))، گراف.شاخص وینر(گ)، گراف.کمر(گ)
    سرچاپ گرد(گراف.خوشگی محلی(گ، ۲))، گرد(گراف.میانگین خوشگی(گ))، گرد(گراف.تعدی(گ))، گراف.شمار مثلث(گ)، گرد(گراف.همگون‌گرایی(گ))، گراف.رتبه مدار(گ)، گراف.قطر وزنی(گ)

    سرچاپ اعشاری‌ها(گراف.مرکزیت درجه(گ))
    سرچاپ اعشاری‌ها(گراف.مرکزیت نزدیکی(گ))
    سرچاپ اعشاری‌ها(گراف.مرکزیت هارمونیک(گ))
    سرچاپ اعشاری‌ها(گراف.مرکزیت بینابینی(گ))
    سرچاپ اعشاری‌ها(گراف.بینابینی یال(گ))
    سرچاپ اعشاری‌ها(گراف.مرکزیت بردار ویژه(گ، ۲۰۰، ۰.۰۰۰۰۰۱))
    سرچاپ اعشاری‌ها(گراف.مرکزیت کاتز(گ، ۰.۱، ۱.۰، ۲۰۰، ۰.۰۰۰۰۰۱))
    ناپایا وب := گراف.از فهرست یال("0 1\n1 2\n2 0\n3 2"، ۴، درست)
    رتبه := گراف.رتبه‌بندی صفحه(وب، ۰.۸۵، ۱۰۰، ۰.۰۰۰۰۰۱)
    سرچاپ اعشاری‌ها(رتبه)، گراف.برترین گره(رتبه)
    سرچاپ اعشاری‌ها(گراف.مرکزیت درجه ورودی(وب))، اعشاری‌ها(گراف.مرکزیت درجه خروجی(وب))
    ناپایا قطب := وکتور {} برگردان وکتور<اعشار۶۴>
    ناپایا مرجع := وکتور {} برگردان وکتور<اعشار۶۴>
    گراف.هیتس(وب، ۱۰۰، ۰.۰۰۰۰۰۱، قطب، مرجع)
    سرچاپ گراف.برترین گره(مرجع)
    ناپایا امتیاز := وکتور {} برگردان وکتور<اعشار۶۴>
    گراف.پرکردن اعشاری(امتیاز، ۴، ۲.۰)
    گراف.مقیاس به مجموع(امتیاز)
    سرچاپ اعشاری‌ها(امتیاز)

    ناپایا مسیر := گراف.گراف مسیر(۳)
    مجاورت := گراف.ماتریس مجاورت(مسیر)
    سرچاپ مجاورت.rows، مجاورت.عنصر(۰، ۱)، مجاورت.رد()، مجاورت.مجموع سطر(۱)
    سرچاپ گراف.ماتریس وزن(مسیر).عنصر(۱، ۲)، گراف.ماتریس درجه(مسیر).عنصر(۱، ۱)، گراف.ماتریس لاپلاس(مسیر).عنصر(۱، ۱)، گرد(گراف.لاپلاس بهنجار(مسیر).عنصر(۰، ۱))، گراف.ماتریس وقوع(مسیر).cols
    ناپایا م := گراف.ماتریس جدید(۲، ۲)
    م.تنظیم(۰، ۰، ۲.۰)
    م.افزودن در(۱، ۱، ۳.۰)
    سرچاپ گراف.دترمینان(م)، گراف.ضرب ماتریس(م، گراف.ماتریس همانی(۲)).عنصر(۱، ۱)، گراف.توان ماتریس(م، ۲).عنصر(۰، ۰)
    سرچاپ اعشاری‌ها(گراف.مقادیر ویژه متقارن(م))، اعشاری‌ها(گراف.طیف مجاورت(مسیر))، اعشاری‌ها(گراف.طیف لاپلاس(مسیر))
    سرچاپ گرد(گراف.شعاع طیفی(مسیر))، گرد(گراف.همبندی جبری(مسیر))
    ناپایا صحیح := گراف.ماتریس صحیح جدید(۲، ۲، ۷)
    صحیح.تنظیم(۰، ۱، ۳)
    سرچاپ صحیح.عنصر(۰، ۱)، صحیح.عنصر(۱، ۱)، صحیح.rows
    م.آزادسازی()
    صحیح.آزادسازی()

    ناپایا الف := گراف.گراف دور(۵)
    ناپایا ب := گراف.گراف پترسن()
    ناپایا نگاشت := وکتور {} برگردان وکتور<صحیح>
    سرچاپ گراف.یکریخت(الف، گراف.گراف دور(۵))، گراف.نگاشت یکریختی(الف، گراف.گراف دور(۵)، نگاشت)، گراف.شمار خودریختی(الف)، گراف.دنباله درجه یکسان(الف، ب)
    سرچاپ گراف.گرافیک است(فهرست("2 2 2"))، گراف.گرافیک است(فهرست("3 1"))، گراف.هاول حکیمی(فهرست("2 2 2")).اندازه()

    ناپایا هرم := گراف.هرم کمینه {}
    هرم.افزودن(۳.۰، ۳۰)
    هرم.افزودن(۱.۰، ۱۰)
    هرم.افزودن(۲.۰، ۲۰)
    سرچاپ هرم.اندازه()، هرم.کلید بالا()، هرم.مقدار بالا()، هرم.برداشتن()، هرم.برداشتن()، هرم.تهی است()
    هرم.پاکسازی()
    سرچاپ هرم.تهی است()
    هرم.آزادسازی()
    ناپایا مجموعه := گراف.مجموعه مجزا جدید(۵)
    سرچاپ مجموعه.یکی‌سازی(۰، ۱)، مجموعه.یکی‌سازی(۱، ۲)، مجموعه.یکی‌سازی(۰، ۲)، مجموعه.متصل(۰، ۲)، مجموعه.اندازه مجموعه(۰)، مجموعه.شمار()، مجموعه.یافتن(۲) == مجموعه.یافتن(۰)
    مجموعه.بازنشانی(۳)
    سرچاپ مجموعه.شمار()
    مجموعه.آزادسازی()
    ناپایا عددها := وکتور {} برگردان وکتور<صحیح>
    گراف.دنباله(عددها، ۴)
    گراف.وارونه‌سازی(عددها)
    سرچاپ صحیح‌ها(عددها)، گراف.بیشینه صحیح(عددها)، گراف.مجموع صحیح(عددها)
    گراف.پرکردن صحیح(عددها، ۳، ۷)
    ناپایا اعشار := وکتور {} برگردان وکتور<اعشار۶۴>
    گراف.پرکردن اعشاری(اعشار، ۲، ۱.۵)
    سرچاپ صحیح‌ها(عددها)، گراف.مجموع اعشاری(اعشار)
پایان
خروجی50 200 3 1 [3 2 2 2 1] [0 1 3 1] true true 3 [3 3 2 2 3] 3 2 [2 3] [0 1 4] 170 17 3 33 47 50 1 -11 1 3 [50 50 75 50 25]/100 [57 57 80 67 44]/100 [71 71 88 75 54]/100 [0 0 400 300 0]/100 [100 300 300 600 400]/100 [50 50 60 34 15]/100 [126 126 138 125 113]/100 [32 31 33 4]/100 2 [33 33 67 0]/100 [33 33 33 33]/100 2 [25 25 25 25]/100 3 1 0 2 1 2 2 -71 2 6 3 4 [200 300]/100 [-141 0 141]/100 [0 100 300]/100 141 100 3 7 2 true true 10 false true false 3 3 1 10 10 20 false true true true false true 3 3 true 3 [3 2 1 0] 3 6 [7 7 7] 3

افزودن push

روال افزودن(k: اعشار۶۴، v: صحیح)
افزودن.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

اندازه size

روال اندازه(): صحیح
اندازه.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

تهی است is_empty

روال تهی است(): منطقی
خالی است.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

کلید بالا top_key

روال کلید بالا(): اعشار۶۴
کمترین کلید.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

مقدار بالا top_value

روال مقدار بالا(): صحیح
مقدار کمترین کلید.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

برداشتن pop

روال برداشتن(): صحیح
کمترین را برمی‌دارد و مقدارش را برمی‌گرداند.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

پاکسازی clear

روال پاکسازی()
خالی می‌کند.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

آزادسازی free

روال آزادسازی()
آزاد می‌کند.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

مجموعه‌های مجزا DisjointSet

ساختار مجموعه‌های مجزا
مجموعه‌های مجزا، یعنی یافتن و اجتماع.
نامانگلیسیگونهتوضیح
parentparentوکتور<صحیح>والدها.
szszوکتور<صحیح>اندازه‌ها.
groupsgroupsصحیح = 0شمار مجموعه‌ها.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

بازنشانی reset

روال بازنشانی(n: صحیح)
با n عضو تکی از نو می‌سازد.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

یافتن find

روال یافتن(x: صحیح): صحیح
نماینده‌ی مجموعه.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

یکی‌سازی union

روال یکی‌سازی(a: صحیح، b: صحیح): منطقی
دو مجموعه را یکی می‌کند؛ اگر از پیش یکی بودند، نادرست.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

متصل connected

روال متصل(a: صحیح، b: صحیح): منطقی
در یک مجموعه‌اند.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

اندازه مجموعه set_size

روال اندازه مجموعه(a: صحیح): صحیح
اندازه‌ی مجموعه.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

شمار count

روال شمار(): صحیح
شمار مجموعه‌ها.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

آزادسازی free

روال آزادسازی()
آزاد می‌کند.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

پایاها و متغیرها

بی‌نهایت گراف GRAPH_INF

پایا بی‌نهایت گراف: اعشار۶۴ = 1e+300
بی‌نهایت برای فاصله‌ی ناممکن.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

هیچ GRAPH_NONE

پایا هیچ: صحیح۳۲ = -1
نبودن گره یا یال، یعنی ۱-.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

روال‌ها

هسته کا KCore

روال هسته کا(g &: گراف، k: صحیح، alive &: وکتور<منطقی>): صحیح
هسته‌ی k و اندازه‌اش.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Flow.salam

شماره‌های هسته CoreNumbers

روال شماره‌های هسته(g &: گراف): وکتور<صحیح>
عدد هسته‌ی هر گره.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Flow.salam

تباهیدگی Degeneracy

روال تباهیدگی(g &: گراف): صحیح
تباهیدگی.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Flow.salam

پیمانگی Modularity

روال پیمانگی(g &: گراف، comm: وکتور<صحیح>): اعشار۶۴
پیمانگی یک افراز.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Flow.salam

انتشار برچسب LabelPropagation

روال انتشار برچسب(g &: گراف، comm &: وکتور<صحیح>): صحیح
جامعه‌ها با انتشار برچسب.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Flow.salam

لوون Louvain

روال لوون(g &: گراف، comm &: وکتور<صحیح>): صحیح
جامعه‌ها با لوون.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Flow.salam

گیروان نیومن GirvanNewman

روال گیروان نیومن(g &: گراف، want: صحیح، comm &: وکتور<صحیح>): صحیح
جامعه‌ها با حذف یال‌های بینابینی.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Flow.salam

ماتریس جدید NewMatrix

روال ماتریس جدید(rows: صحیح، cols: صحیح): ماتریس
ماتریس صفر.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

ماتریس صحیح جدید NewIntMatrix

روال ماتریس صحیح جدید(rows: صحیح، cols: صحیح، fill: صحیح): ماتریس صحیح
ماتریس صحیح پر از یک مقدار.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Paths.salam

ماتریس مجاورت AdjacencyMatrix

روال ماتریس مجاورت(g &: گراف): ماتریس
ماتریس مجاورت.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

ماتریس وزن WeightMatrix

روال ماتریس وزن(g &: گراف): ماتریس
ماتریس وزن.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

ماتریس درجه DegreeMatrix

روال ماتریس درجه(g &: گراف): ماتریس
ماتریس درجه.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

ماتریس لاپلاس LaplacianMatrix

روال ماتریس لاپلاس(g &: گراف): ماتریس
ماتریس لاپلاس.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

لاپلاس بهنجار NormalizedLaplacian

روال لاپلاس بهنجار(g &: گراف): ماتریس
لاپلاس بهنجار.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

ماتریس وقوع IncidenceMatrix

روال ماتریس وقوع(g &: گراف): ماتریس
ماتریس وقوع گره و یال.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

ضرب ماتریس MatrixMultiply

روال ضرب ماتریس(x &: ماتریس، y &: ماتریس): ماتریس
ضرب ماتریس.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

ماتریس همانی MatrixIdentity

روال ماتریس همانی(n: صحیح): ماتریس
ماتریس همانی.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

توان ماتریس MatrixPower

روال توان ماتریس(x &: ماتریس، k: صحیح): ماتریس
توان ماتریس.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

شمار گشت WalkCount

روال شمار گشت(g &: گراف، k: صحیح، u: صحیح، v: صحیح): اعشار۶۴
شمار گشت‌های به طول k.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Paths.salam

پیمایش سطحی از BFSFrom

روال پیمایش سطحی از(g &: گراف، src: صحیح، dist &: وکتور<صحیح>، parent &: وکتور<صحیح>)
پیمایش سطحی با فاصله و والد.
graph-Search.salam
واردسازی گراف

روال صحیح‌ها(بردار: وکتور<صحیح>): رشته:
    ناپایا متن := "["
    تکرار بردار.طول() در ش:
        اگر ش > ۰:
            متن += " "
        پایان
        متن += "" + بردار.دریافت(ش)
    پایان
    برگشت متن + "]"
پایان


روال ریشه:
    ناپایا گ := گراف.از فهرست یال("0 1\n1 2\n2 0\n2 3\n4 5"، ۶، نادرست)
    سرچاپ صحیح‌ها(گراف.پیمایش سطحی(گ، ۰))، صحیح‌ها(گراف.ترتیب سطحی(گ، ۰))، صحیح‌ها(گراف.ترتیب عمقی(گ، ۰))، صحیح‌ها(گراف.ترتیب پسین عمقی(گ، ۰))
    ناپایا فاصله := وکتور {} برگردان وکتور<صحیح>
    ناپایا والد := وکتور {} برگردان وکتور<صحیح>
    گراف.پیمایش سطحی از(گ، ۰، فاصله، والد)
    سرچاپ صحیح‌ها(فاصله)، صحیح‌ها(گراف.مسیر از والدها(والد، ۰، ۳))، صحیح‌ها(گراف.جنگل عمقی(گ))
    سرچاپ گراف.شمار دست‌یافتنی(گ، ۰)، گراف.دست‌یافتنی(گ، ۴).دریافت(۵)، گراف.فاصله گامی(گ، ۰، ۳)، گراف.فاصله گامی(گ، ۰، ۴)، صحیح‌ها(گراف.مسیر گامی(گ، ۱، ۳))
    ناپایا مؤلفه := وکتور {} برگردان وکتور<صحیح>
    سرچاپ گراف.مؤلفه‌ها(گ، مؤلفه)، صحیح‌ها(مؤلفه)، گراف.شمار مؤلفه(گ)، صحیح‌ها(گراف.اندازه مؤلفه‌ها(گ))، گراف.همبند است(گ)
    ناپایا رنگ := وکتور {} برگردان وکتور<صحیح>
    سرچاپ گراف.دوبخشی است(گراف.گراف دور(۴)، رنگ)، صحیح‌ها(رنگ)، گراف.دوبخشی(گ)
    سرچاپ صحیح‌ها(گراف.یافتن دور(گ))، گراف.دارای دور(گ)
    سرچاپ صحیح‌ها(گراف.پل‌ها(گ))، صحیح‌ها(گراف.نقاط برش(گ))
    ناپایا دوهمبند := وکتور {} برگردان وکتور<صحیح>
    سرچاپ گراف.مؤلفه‌های دوهمبند(گ، دوهمبند)، صحیح‌ها(دوهمبند)، گراف.دوهمبند است(گراف.گراف دور(۵))، گراف.دو یال همبند است(گراف.گراف دور(۵))
    ناپایا دویالی := وکتور {} برگردان وکتور<صحیح>
    سرچاپ گراف.مؤلفه‌های دویالی(گ، دویالی)، صحیح‌ها(دویالی)
    گامی := گراف.همه فاصله‌های گامی(گراف.گراف مسیر(۳))
    سرچاپ گامی.عنصر(۰، ۲)، گامی.rows

    ناپایا کارها := گراف.از فهرست یال("0 1\n0 2\n1 3\n2 3\n3 4"، ۵، درست)
    ناپایا ترتیب := وکتور {} برگردان وکتور<صحیح>
    سرچاپ گراف.مرتب‌سازی توپولوژیک(کارها، ترتیب)، صحیح‌ها(ترتیب)
    سرچاپ گراف.مرتب‌سازی توپولوژیک الفبایی(کارها، ترتیب)، صحیح‌ها(ترتیب)، گراف.گراف جهت‌دار بی‌دور است(کارها)
    ناپایا دوری := گراف.از فهرست یال("0 1\n1 2\n2 0\n2 3\n3 4\n4 3"، ۵، درست)
    ناپایا قوی := وکتور {} برگردان وکتور<صحیح>
    سرچاپ گراف.مؤلفه‌های همبند قوی(دوری، قوی)، صحیح‌ها(قوی)، گراف.شمار مؤلفه قوی(دوری)، گراف.همبند قوی است(دوری)
    ناپایا کوسا := وکتور {} برگردان وکتور<صحیح>
    سرچاپ گراف.کوساراجو(دوری، کوسا)
    چگال := گراف.چگالش(دوری، قوی)
    سرچاپ چگال.مرتبه()، چگال.اندازه()
پایان
خروجی[0 1 1 2 -1 -1] [0 1 2 3] [0 1 2 3] [3 2 1 0] [0 1 1 2 -1 -1] [0 2 3] [0 1 2 3 4 5] 4 true 2 -1 [1 2 3] 2 [0 0 0 0 1 1] 2 [4 2] false true [0 1 0 1] false [0 1 2] true [3 4] [2] 3 [1 1 1 0 2] true true 4 [0 0 0 1 2 3] 2 3 true [0 1 2 3 4] true [0 1 2 3 4] true 2 [1 1 1 0 0] 2 false 2 2 1

پیمایش سطحی BFS

روال پیمایش سطحی(g &: گراف، src: صحیح): وکتور<صحیح>
فاصله‌ی گامی همه از مبدأ؛ ۱- یعنی دست‌نیافتنی.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Search.salam

ترتیب سطحی BFSOrder

روال ترتیب سطحی(g &: گراف، src: صحیح): وکتور<صحیح>
ترتیب دیدن گره‌ها در پیمایش سطحی.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Search.salam

ترتیب عمقی DFSOrder

روال ترتیب عمقی(g &: گراف، src: صحیح): وکتور<صحیح>
ترتیب پیمایش عمقی.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Search.salam

ترتیب پسین عمقی DFSPostOrder

روال ترتیب پسین عمقی(g &: گراف، src: صحیح): وکتور<صحیح>
ترتیب پسین پیمایش عمقی.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Search.salam

جنگل عمقی DFSForest

روال جنگل عمقی(g &: گراف): وکتور<صحیح>
ترتیب عمقی کل گراف.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Search.salam

دست‌یافتنی Reachable

روال دست‌یافتنی(g &: گراف، src: صحیح): وکتور<منطقی>
دست‌یافتنی بودن هر گره.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Search.salam

شمار دست‌یافتنی ReachableCount

روال شمار دست‌یافتنی(g &: گراف، src: صحیح): صحیح
شمار دست‌یافتنی‌ها.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Search.salam

فاصله گامی HopDistance

روال فاصله گامی(g &: گراف، s: صحیح، t: صحیح): صحیح
کمترین شمار گام.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Search.salam

مسیر از والدها PathFromParents

روال مسیر از والدها(parent: وکتور<صحیح>، s: صحیح، t: صحیح): وکتور<صحیح>
مسیر از فهرست والدها.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Search.salam

مسیر گامی HopPath

روال مسیر گامی(g &: گراف، s: صحیح، t: صحیح): وکتور<صحیح>
مسیر با کمترین گام.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Search.salam

شمار رنگ‌آمیزی‌ها CountColorings

روال شمار رنگ‌آمیزی‌ها(g &: گراف، k: صحیح): اعشار۶۴
شمار رنگ‌آمیزی‌ها با k رنگ.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Flow.salam

مرکزیت درجه DegreeCentrality

روال مرکزیت درجه(g &: گراف): وکتور<اعشار۶۴>
مرکزیت درجه.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

مرکزیت درجه ورودی InDegreeCentrality

روال مرکزیت درجه ورودی(g &: گراف): وکتور<اعشار۶۴>
مرکزیت درجه‌ی ورودی.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

مرکزیت درجه خروجی OutDegreeCentrality

روال مرکزیت درجه خروجی(g &: گراف): وکتور<اعشار۶۴>
مرکزیت درجه‌ی خروجی.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

مرکزیت نزدیکی ClosenessCentrality

روال مرکزیت نزدیکی(g &: گراف): وکتور<اعشار۶۴>
مرکزیت نزدیکی.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

مرکزیت هارمونیک HarmonicCentrality

روال مرکزیت هارمونیک(g &: گراف): وکتور<اعشار۶۴>
مرکزیت هارمونیک.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

مرکزیت بینابینی BetweennessCentrality

روال مرکزیت بینابینی(g &: گراف): وکتور<اعشار۶۴>
مرکزیت بینابینی با براندز.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

بینابینی یال EdgeBetweenness

روال بینابینی یال(g &: گراف): وکتور<اعشار۶۴>
بینابینی یال‌ها.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

مرکزیت بردار ویژه EigenvectorCentrality

روال مرکزیت بردار ویژه(g &: گراف، iters: صحیح، tol: اعشار۶۴): وکتور<اعشار۶۴>
مرکزیت بردار ویژه.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

مرکزیت کاتز KatzCentrality

روال مرکزیت کاتز(g &: گراف، alpha: اعشار۶۴، beta: اعشار۶۴، iters: صحیح، tol: اعشار۶۴): وکتور<اعشار۶۴>
مرکزیت کاتز.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

رتبه‌بندی صفحه PageRank

روال رتبه‌بندی صفحه(g &: گراف، damping: اعشار۶۴، iters: صحیح، tol: اعشار۶۴): وکتور<اعشار۶۴>
رتبه‌بندی صفحه؛ مثل گوگل.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

هیتس HITS

روال هیتس(g &: گراف، iters: صحیح، tol: اعشار۶۴، hubs &: وکتور<اعشار۶۴>، auth &: وکتور<اعشار۶۴>)
امتیاز قطب و مرجع.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

برترین گره TopNode

روال برترین گره(score: وکتور<اعشار۶۴>): صحیح
گره با بیشترین امتیاز.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

مقیاس به مجموع ScaleToSum

روال مقیاس به مجموع(v &: وکتور<اعشار۶۴>)
امتیازها را با مجموع یک بهنجار می‌کند.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

رنگ‌آمیزی حریصانه GreedyColoring

روال رنگ‌آمیزی حریصانه(g &: گراف، order: وکتور<صحیح>): وکتور<صحیح>
رنگ‌آمیزی حریصانه با ترتیب داده‌شده.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Flow.salam

رنگ‌آمیزی حریصانه طبیعی GreedyColoringNatural

روال رنگ‌آمیزی حریصانه طبیعی(g &: گراف): وکتور<صحیح>
رنگ‌آمیزی حریصانه به ترتیب شماره‌ها.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Flow.salam

ولش پاول WelshPowell

روال ولش پاول(g &: گراف): وکتور<صحیح>
رنگ‌آمیزی ولش پاول.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Flow.salam

دی‌سچور DSatur

روال دی‌سچور(g &: گراف): وکتور<صحیح>
رنگ‌آمیزی DSatur.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Flow.salam

شمار رنگ ColorCount

روال شمار رنگ(color: وکتور<صحیح>): صحیح
شمار رنگ‌ها.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Flow.salam

رنگ‌آمیزی معتبر است IsProperColoring

روال رنگ‌آمیزی معتبر است(g &: گراف، color: وکتور<صحیح>): منطقی
هیچ دو همسایه‌ای هم‌رنگ نیستند.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Flow.salam

عدد رنگی ChromaticNumber

روال عدد رنگی(g &: گراف): صحیح
کمترین شمار رنگ؛ برای گراف کوچک.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Flow.salam

رنگ‌آمیزی یالی حریصانه EdgeColoringGreedy

روال رنگ‌آمیزی یالی حریصانه(g &: گراف): وکتور<صحیح>
رنگ‌آمیزی یالی حریصانه.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Flow.salam

همانندسازی Clone

روال همانندسازی(g &: گراف): گراف
رونوشت.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

ترانهاده Transpose

روال ترانهاده(g &: گراف): گراف
جهت همه‌ی یال‌ها را برعکس می‌کند.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

برعکس Reverse

روال برعکس(g &: گراف): گراف
همان ترانهاده.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

به بی‌جهت ToUndirected

روال به بی‌جهت(g &: گراف): گراف
نسخه‌ی بی‌جهت.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

به جهت‌دار ToDirected

روال به جهت‌دار(g &: گراف): گراف
نسخه‌ی جهت‌دار با یال در هر دو جهت.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

زیرگراف با نگاشت SubgraphMap

روال زیرگراف با نگاشت(g &: گراف، keep: وکتور<منطقی>، map &: وکتور<صحیح>): گراف
زیرگراف گره‌های نگه‌داشته، با نگاشت شماره‌های قدیم به تازه.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

زیرگراف Subgraph

روال زیرگراف(g &: گراف، keep: وکتور<منطقی>): گراف
زیرگراف گره‌های نگه‌داشته.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

زیرگراف یالی EdgeSubgraph

روال زیرگراف یالی(g &: گراف، keep: وکتور<منطقی>): گراف
زیرگراف یال‌های نگه‌داشته.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

مکمل Complement

روال مکمل(g &: گراف): گراف
مکمل.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

اجتماع Union

روال اجتماع(a &: گراف، b &: گراف): گراف
اجتماع یال‌ها روی همان گره‌ها.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

اجتماع مجزا DisjointUnion

روال اجتماع مجزا(a &: گراف، b &: گراف): گراف
دو گراف کنار هم، بی یال مشترک.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

اشتراک Intersection

روال اشتراک(a &: گراف، b &: گراف): گراف
یال‌های مشترک.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

گراف یالی LineGraph

روال گراف یالی(g &: گراف): گراف
گراف یالی: هر یال یک گره.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

ساده‌سازی Simplify

روال ساده‌سازی(g &: گراف): گراف
بی طوقه و یال موازی.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

حذف طوقه‌ها RemoveSelfLoops

روال حذف طوقه‌ها(g &: گراف): گراف
بی طوقه.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

شمار طوقه SelfLoopCount

روال شمار طوقه(g &: گراف): صحیح
شمار طوقه‌ها.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

دارای طوقه HasSelfLoop

روال دارای طوقه(g &: گراف): منطقی
طوقه دارد.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

شمار یال موازی ParallelEdgeCount

روال شمار یال موازی(g &: گراف): صحیح
شمار یال‌های موازی.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

ساده است IsSimple

روال ساده است(g &: گراف): منطقی
ساده است.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

وزن کل TotalWeight

روال وزن کل(g &: گراف): اعشار۶۴
مجموع وزن یال‌ها.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

فلوید وارشال FloydWarshall

روال فلوید وارشال(g &: گراف): ماتریس
فاصله‌ی همه‌ی جفت‌ها.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Paths.salam

فلوید وارشال با مسیر FloydWarshallPaths

روال فلوید وارشال با مسیر(g &: گراف، next &: ماتریس صحیح): ماتریس
همان، با ماتریس گام بعد.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Paths.salam

مسیر فلوید FloydPath

روال مسیر فلوید(next &: ماتریس صحیح، s: صحیح، t: صحیح): وکتور<صحیح>
مسیر از ماتریس گام بعد.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Paths.salam

جانسون Johnson

روال جانسون(g &: گراف): ماتریس
فاصله‌ی همه‌ی جفت‌ها در گراف تنک با وزن منفی.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Paths.salam

ای‌استار AStar

روال ای‌استار(g &: گراف، src: صحیح، target: صحیح، heuristic: وکتور<اعشار۶۴>): وکتور<صحیح>
جستجوی ای‌استار با تخمین فاصله تا مقصد.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Paths.salam

کوتاه‌ترین طول‌ها KShortestLengths

روال کوتاه‌ترین طول‌ها(g &: گراف، s: صحیح، t: صحیح، k: صحیح): وکتور<اعشار۶۴>
طول k کوتاه‌ترین مسیر.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Paths.salam

همه فاصله‌های گامی AllPairsHops

روال همه فاصله‌های گامی(g &: گراف): ماتریس صحیح
فاصله‌ی گامی همه‌ی جفت‌ها.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Search.salam

درخت است IsTree

روال درخت است(g &: گراف): منطقی
درخت است.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Trees.salam

جنگل است IsForest

روال جنگل است(g &: گراف): منطقی
جنگل است.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Trees.salam

ریشه‌دار کردن RootTree

روال ریشه‌دار کردن(g &: گراف، root: صحیح، parent &: وکتور<صحیح>، order &: وکتور<صحیح>)
درخت را با ریشه، والد و ترتیب ریشه‌دار می‌کند.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Trees.salam

اندازه زیردرخت‌ها SubtreeSizes

روال اندازه زیردرخت‌ها(g &: گراف، root: صحیح): وکتور<صحیح>
اندازه‌ی زیردرخت هر گره.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Trees.salam

قطر درخت TreeDiameter

روال قطر درخت(g &: گراف، ends &: وکتور<صحیح>): صحیح
قطر درخت و دو سرش.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Trees.salam

مرکز درخت TreeCenter

روال مرکز درخت(g &: گراف): وکتور<صحیح>
مرکز درخت.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Trees.salam

مرکز ثقل درخت TreeCentroid

روال مرکز ثقل درخت(g &: گراف): وکتور<صحیح>
مرکز ثقل درخت.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Trees.salam

جدید New

روال جدید(n: صحیح، directed: منطقی): گراف
گراف با n گره، جهت‌دار یا بی‌جهت.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

بی‌جهت جدید NewUndirected

روال بی‌جهت جدید(n: صحیح): گراف
گراف بی‌جهت.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

جهت‌دار جدید NewDirected

روال جهت‌دار جدید(n: صحیح): گراف
گراف جهت‌دار.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

از یال‌ها FromEdges

روال از یال‌ها(n: صحیح، us: وکتور<صحیح>، vs: وکتور<صحیح>، directed: منطقی): گراف
گراف از دو فهرست سر و ته یال‌ها.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

نزدیک است IsClose

روال نزدیک است(a: اعشار۶۴، b: اعشار۶۴): منطقی
دو عدد اعشاری تا رواداری برابرند.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

دترمینان Determinant

روال دترمینان(x &: ماتریس): اعشار۶۴
دترمینان.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

شمار درخت پوشا SpanningTreeCount

روال شمار درخت پوشا(g &: گراف): اعشار۶۴
شمار درخت‌های پوشا با قضیه‌ی کیرشهوف.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Trees.salam

مقادیر ویژه متقارن SymmetricEigenvalues

روال مقادیر ویژه متقارن(x &: ماتریس): وکتور<اعشار۶۴>
مقادیر ویژه‌ی ماتریس متقارن.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

طیف مجاورت AdjacencySpectrum

روال طیف مجاورت(g &: گراف): وکتور<اعشار۶۴>
طیف مجاورت.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

طیف لاپلاس LaplacianSpectrum

روال طیف لاپلاس(g &: گراف): وکتور<اعشار۶۴>
طیف لاپلاس.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

شعاع طیفی SpectralRadius

روال شعاع طیفی(g &: گراف): اعشار۶۴
شعاع طیفی.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

همبندی جبری AlgebraicConnectivity

روال همبندی جبری(g &: گراف): اعشار۶۴
همبندی جبری، دومین مقدار ویژه‌ی لاپلاس.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

کمینه برش سراسری GlobalMinCut

روال کمینه برش سراسری(g &: گراف): اعشار۶۴
کمینه برش سراسری با استور واگنر.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Flow.salam

همبندی یالی EdgeConnectivity

روال همبندی یالی(g &: گراف): صحیح
کمترین یال‌هایی که حذفشان گراف را جدا می‌کند.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Flow.salam

همبندی رأسی VertexConnectivity

روال همبندی رأسی(g &: گراف): صحیح
کمترین گره‌هایی که حذفشان گراف را جدا می‌کند.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Flow.salam

جورسازی دوبخشی BipartiteMatching

روال جورسازی دوبخشی(g &: گراف، mate &: وکتور<صحیح>): صحیح
بیشینه جورسازی دوبخشی با هاپکرافت کارپ.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Flow.salam

جورسازی بیشینه‌ای MaximalMatching

روال جورسازی بیشینه‌ای(g &: گراف، mate &: وکتور<صحیح>): صحیح
جورسازی بیشینه‌ای حریصانه.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Flow.salam

کمینه پوشش رأسی MinimumVertexCover

روال کمینه پوشش رأسی(g &: گراف، cover &: وکتور<منطقی>): صحیح
کمینه پوشش رأسی در گراف دوبخشی.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Flow.salam

بیشینه مجموعه مستقل دوبخشی MaximumIndependentSetBipartite

روال بیشینه مجموعه مستقل دوبخشی(g &: گراف، pick &: وکتور<منطقی>): صحیح
بیشینه مجموعه‌ی مستقل در گراف دوبخشی.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Flow.salam

گراف تهی EmptyGraph

روال گراف تهی(n: صحیح): گراف
گراف بی یال.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

گراف کامل CompleteGraph

روال گراف کامل(n: صحیح): گراف
گراف کامل.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

دوبخشی کامل CompleteBipartite

روال دوبخشی کامل(a: صحیح، b: صحیح): گراف
گراف دوبخشی کامل.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

گراف مسیر PathGraph

روال گراف مسیر(n: صحیح): گراف
گراف مسیر.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

گراف دور CycleGraph

روال گراف دور(n: صحیح): گراف
گراف دور.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

گراف ستاره StarGraph

روال گراف ستاره(n: صحیح): گراف
گراف ستاره.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

گراف چرخ WheelGraph

روال گراف چرخ(n: صحیح): گراف
گراف چرخ.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

گراف شبکه GridGraph

روال گراف شبکه(rows: صحیح، cols: صحیح): گراف
گراف شبکه‌ای.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

گراف مکعبی HypercubeGraph

روال گراف مکعبی(d: صحیح): گراف
گراف ابرمکعب.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

گراف پترسن PetersenGraph

روال گراف پترسن(): گراف
گراف پترسن.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

گراف دوری CirculantGraph

روال گراف دوری(n: صحیح، offsets: وکتور<صحیح>): گراف
گراف دوری با فاصله‌ها.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

درخت متوازن BalancedTree

روال درخت متوازن(branch: صحیح، depth: صحیح): گراف
درخت متوازن با شاخه و عمق.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

اردوش رنی ErdosRenyi

روال اردوش رنی(n: صحیح، p: اعشار۶۴): گراف
گراف تصادفی اردوش رنی با احتمال یال.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

گراف تصادفی RandomGraph

روال گراف تصادفی(n: صحیح، m: صحیح): گراف
گراف تصادفی با m یال.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

درخت تصادفی RandomTree

روال درخت تصادفی(n: صحیح): گراف
درخت تصادفی.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

باراباشی آلبرت BarabasiAlbert

روال باراباشی آلبرت(n: صحیح، m: صحیح): گراف
گراف تصادفی بی‌مقیاس باراباشی آلبرت.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

واتس استروگاتز WattsStrogatz

روال واتس استروگاتز(n: صحیح، k: صحیح، p: اعشار۶۴): گراف
گراف دنیای کوچک واتس استروگاتز.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

چگالی Density

روال چگالی(g &: گراف): اعشار۶۴
چگالی.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

میانگین درجه AverageDegree

روال میانگین درجه(g &: گراف): اعشار۶۴
میانگین درجه.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

بیشینه درجه MaxDegree

روال بیشینه درجه(g &: گراف): صحیح
بیشینه‌ی درجه.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

کمینه درجه MinDegree

روال کمینه درجه(g &: گراف): صحیح
کمینه‌ی درجه.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

دنباله درجه DegreeSequence

روال دنباله درجه(g &: گراف): وکتور<صحیح>
دنباله‌ی درجه‌ها، نزولی.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

بافت‌نگار درجه DegreeHistogram

روال بافت‌نگار درجه(g &: گراف): وکتور<صحیح>
شمار گره‌ها با هر درجه.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

منتظم است IsRegular

روال منتظم است(g &: گراف): منطقی
همه‌ی درجه‌ها برابرند.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

کامل است IsComplete

روال کامل است(g &: گراف): منطقی
کامل است.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

برون‌مرکزی Eccentricity

روال برون‌مرکزی(g &: گراف، u: صحیح): صحیح
دورترین فاصله از گره.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

همه برون‌مرکزی‌ها EccentricityAll

روال همه برون‌مرکزی‌ها(g &: گراف): وکتور<صحیح>
برون‌مرکزی همه.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

قطر Diameter

روال قطر(g &: گراف): صحیح
قطر.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Trees.salam

شعاع Radius

روال شعاع(g &: گراف): صحیح
شعاع.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

مرکز Center

روال مرکز(g &: گراف): وکتور<صحیح>
گره‌های مرکزی.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Trees.salam

پیرامون Periphery

روال پیرامون(g &: گراف): وکتور<صحیح>
گره‌های پیرامونی.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

میانگین طول مسیر AveragePathLength

روال میانگین طول مسیر(g &: گراف): اعشار۶۴
میانگین فاصله.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

شاخص وینر WienerIndex

روال شاخص وینر(g &: گراف): اعشار۶۴
مجموع فاصله‌ها.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

کمر Girth

روال کمر(g &: گراف): صحیح
کوتاه‌ترین دور.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

دارای دور اویلری HasEulerianCircuit

روال دارای دور اویلری(g &: گراف): منطقی
دور اویلری دارد.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Paths.salam

دارای مسیر اویلری HasEulerianPath

روال دارای مسیر اویلری(g &: گراف): منطقی
مسیر اویلری دارد.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Paths.salam

دور اویلری EulerianCircuit

روال دور اویلری(g &: گراف): وکتور<صحیح>
دوری که از هر یال یک بار می‌گذرد.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Paths.salam

مسیر اویلری EulerianPath

روال مسیر اویلری(g &: گراف): وکتور<صحیح>
مسیری که از هر یال یک بار می‌گذرد.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Paths.salam

مسیر همیلتونی HamiltonianPath

روال مسیر همیلتونی(g &: گراف): وکتور<صحیح>
مسیری که از هر گره یک بار می‌گذرد؛ برای گراف کوچک.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Paths.salam

دور همیلتونی HamiltonianCycle

روال دور همیلتونی(g &: گراف): وکتور<صحیح>
دور همیلتونی.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Paths.salam

دارای دور همیلتونی HasHamiltonianCycle

روال دارای دور همیلتونی(g &: گراف): منطقی
دور همیلتونی دارد.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Paths.salam

طول تور TourLength

روال طول تور(g &: گراف، tour: وکتور<صحیح>): اعشار۶۴
طول تور.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Paths.salam

نزدیک‌ترین همسایه TSPNearestNeighbor

روال نزدیک‌ترین همسایه(g &: گراف، start: صحیح): وکتور<صحیح>
تور فروشنده‌ی دوره‌گرد با نزدیک‌ترین همسایه.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Paths.salam

دوبهینه TSPTwoOpt

روال دوبهینه(g &: گراف، tour &: وکتور<صحیح>): اعشار۶۴
تور را با جابه‌جایی دوتایی بهتر می‌کند و طول تازه را برمی‌گرداند.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Paths.salam

ابتکاری فروشنده دوره‌گرد TSPHeuristic

روال ابتکاری فروشنده دوره‌گرد(g &: گراف، start: صحیح): وکتور<صحیح>
ترکیب دو روش بالا.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Paths.salam

شبکه شار جدید NewFlowNet

روال شبکه شار جدید(n: صحیح): شبکه شار
شبکه‌ی شار با n گره.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Flow.salam

شار از گراف FlowFromGraph

روال شار از گراف(g &: گراف): شبکه شار
شبکه‌ی شار از گراف با وزن‌ها به عنوان ظرفیت.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Flow.salam

بیشینه شار MaxFlow

روال بیشینه شار(f &: شبکه شار، s: صحیح، t: صحیح): اعشار۶۴
بیشینه‌ی شار با دینیک.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Flow.salam

بیشینه شار ادموندز کارپ MaxFlowEdmondsKarp

روال بیشینه شار ادموندز کارپ(f &: شبکه شار، s: صحیح، t: صحیح): اعشار۶۴
بیشینه‌ی شار با ادموندز کارپ.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Flow.salam

کمینه برش MinCut

روال کمینه برش(f &: شبکه شار، s: صحیح، t: صحیح، side &: وکتور<منطقی>): اعشار۶۴
کمینه برش و سمت مبدأ.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Flow.salam

مقدار بیشینه شار MaxFlowValue

روال مقدار بیشینه شار(g &: گراف، s: صحیح، t: صحیح): اعشار۶۴
بیشینه‌ی شار در گراف.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Flow.salam

یال‌های کمینه برش MinCutEdges

روال یال‌های کمینه برش(g &: گراف، s: صحیح، t: صحیح، cut &: وکتور<صحیح>): اعشار۶۴
یال‌های کمینه برش.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Flow.salam

شار کم‌هزینه MinCostFlow

روال شار کم‌هزینه(f &: شبکه شار، s: صحیح، t: صحیح، want: اعشار۶۴، sent &: اعشار۶۴): اعشار۶۴
شار با کمترین هزینه؛ مقدار فرستاده هم پر می‌شود.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Flow.salam

کروسکال Kruskal

روال کروسکال(g &: گراف، chosen &: وکتور<صحیح>): اعشار۶۴
درخت پوشای کمینه با کروسکال؛ وزن را برمی‌گرداند.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Trees.salam

درخت پوشای بیشینه MaximumSpanningTree

روال درخت پوشای بیشینه(g &: گراف، chosen &: وکتور<صحیح>): اعشار۶۴
درخت پوشای بیشینه.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Trees.salam

پریم Prim

روال پریم(g &: گراف، root: صحیح، parent &: وکتور<صحیح>): اعشار۶۴
درخت پوشای کمینه با پریم.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Trees.salam

بوروفکا Boruvka

روال بوروفکا(g &: گراف، chosen &: وکتور<صحیح>): اعشار۶۴
درخت پوشای کمینه با بوروفکا.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Trees.salam

وزن درخت پوشا MSTWeight

روال وزن درخت پوشا(g &: گراف): اعشار۶۴
وزن درخت پوشای کمینه.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Trees.salam

درخت پوشای کمینه MinimumSpanningTree

روال درخت پوشای کمینه(g &: گراف): گراف
درخت پوشای کمینه به شکل گراف.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Trees.salam

توافق پوشا SpanningAgreement

روال توافق پوشا(g &: گراف): منطقی
سه الگوریتم وزن یکسان می‌دهند؛ برای آزمون.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Trees.salam

کوتاه‌ترین مسیر بی‌دور DAGShortestPath

روال کوتاه‌ترین مسیر بی‌دور(g &: گراف، src: صحیح، dist &: وکتور<اعشار۶۴>، parent &: وکتور<صحیح>): منطقی
کوتاه‌ترین مسیر در گراف بی‌دور.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Paths.salam

بلندترین مسیر بی‌دور DAGLongestPath

روال بلندترین مسیر بی‌دور(g &: گراف، src: صحیح، dist &: وکتور<اعشار۶۴>، parent &: وکتور<صحیح>): منطقی
بلندترین مسیر در گراف بی‌دور.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Paths.salam

مسیر بحرانی CriticalPath

روال مسیر بحرانی(g &: گراف): وکتور<صحیح>
مسیر بحرانی پروژه.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Paths.salam

شمار مسیرها CountPaths

روال شمار مسیرها(g &: گراف، s: صحیح، t: صحیح): اعشار۶۴
شمار مسیرها در گراف بی‌دور.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Paths.salam

شمارش مسیرها PathCounts

روال شمارش مسیرها(g &: گراف، src: صحیح): وکتور<اعشار۶۴>
شمار مسیرها از مبدأ به هر گره.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Paths.salam

بستار تعدی TransitiveClosure

روال بستار تعدی(g &: گراف): ماتریس صحیح
بستار تعدی: چه کسی به چه کسی می‌رسد.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Paths.salam

کاهش تعدی TransitiveReduction

روال کاهش تعدی(g &: گراف): گراف
کمترین گراف با همان دسترسی.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Paths.salam

لایه‌های توپولوژیک TopologicalLayers

روال لایه‌های توپولوژیک(g &: گراف، layer &: وکتور<صحیح>): صحیح
لایه‌ی هر گره؛ کارهایی که می‌توانند هم‌زمان انجام شوند.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Paths.salam

ترتیب کلی است IsTotalOrder

روال ترتیب کلی است(g &: گراف): منطقی
ترتیب توپولوژیک یکتاست.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Paths.salam

ساخت نیای مشترک BuildLCA

روال ساخت نیای مشترک(g &: گراف، root: صحیح): نمایه نیای مشترک
نمایه‌ی نیای مشترک کمینه با دوبرابرسازی.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Trees.salam

نیای مشترک LCA

روال نیای مشترک(ix &: نمایه نیای مشترک، u0: صحیح، v0: صحیح): صحیح
نیای مشترک کمینه‌ی دو گره.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Trees.salam

فاصله درختی TreeDistance

روال فاصله درختی(ix &: نمایه نیای مشترک، u: صحیح، v: صحیح): صحیح
فاصله‌ی دو گره در درخت.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Trees.salam

کد پروفر PruferEncode

روال کد پروفر(g &: گراف): وکتور<صحیح>
کد پروفر درخت.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Trees.salam

کدگشایی پروفر PruferDecode

روال کدگشایی پروفر(code: وکتور<صحیح>): گراف
درخت از کد پروفر.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Trees.salam

درخت‌های یکریخت TreeIsomorphic

روال درخت‌های یکریخت(a &: گراف، b &: گراف): منطقی
دو درخت یکریخت‌اند.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Trees.salam

شکل متعارف درخت TreeCanonicalForm

روال شکل متعارف درخت(g &: گراف): رشته
شکل متعارف درخت با پرانتز.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Trees.salam

شمار درخت برچسب‌دار LabeledTreeCount

روال شمار درخت برچسب‌دار(n: صحیح): اعشار۶۴
شمار درخت‌های برچسب‌دار، n به توان n منهای دو.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Trees.salam

درخت به رشته TreeToString

روال درخت به رشته(g &: گراف، root: صحیح): رشته
درخت به متن پرانتزی.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Trees.salam

مؤلفه‌های همبند قوی StronglyConnected

روال مؤلفه‌های همبند قوی(g &: گراف، comp &: وکتور<صحیح>): صحیح
مؤلفه‌های همبند قوی با الگوریتم تارجان.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Search.salam

شمار مؤلفه قوی SCCCount

روال شمار مؤلفه قوی(g &: گراف): صحیح
شمار مؤلفه‌های قوی.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Search.salam

همبند قوی است IsStronglyConnected

روال همبند قوی است(g &: گراف): منطقی
همبند قوی است.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Search.salam

کوساراجو Kosaraju

روال کوساراجو(g &: گراف، comp &: وکتور<صحیح>): صحیح
مؤلفه‌های قوی با الگوریتم کوساراجو.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Search.salam

چگالش Condensation

روال چگالش(g &: گراف، comp &: وکتور<صحیح>): گراف
گراف مؤلفه‌ها، که همیشه بی‌دور است.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Search.salam

پل‌ها Bridges

روال پل‌ها(g &: گراف): وکتور<صحیح>
یال‌هایی که حذفشان گراف را جدا می‌کند.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Search.salam

نقاط برش ArticulationPoints

روال نقاط برش(g &: گراف): وکتور<صحیح>
گره‌هایی که حذفشان گراف را جدا می‌کند.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Search.salam

مؤلفه‌های دوهمبند BiconnectedComponents

روال مؤلفه‌های دوهمبند(g &: گراف، ecomp &: وکتور<صحیح>): صحیح
مؤلفه‌های دوهمبند یال‌ها.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Search.salam

دوهمبند است IsBiconnected

روال دوهمبند است(g &: گراف): منطقی
دوهمبند است.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Search.salam

دو یال همبند است IsTwoEdgeConnected

روال دو یال همبند است(g &: گراف): منطقی
بی پل و همبند است.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Search.salam

مؤلفه‌های دویالی TwoEdgeComponents

روال مؤلفه‌های دویالی(g &: گراف، comp &: وکتور<صحیح>): صحیح
مؤلفه‌های دویالی.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Search.salam

مجموعه مجزا جدید NewDisjointSet

روال مجموعه مجزا جدید(n: صحیح): مجموعه‌های مجزا
n مجموعه‌ی تکی.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

پرکردن صحیح FillInt

روال پرکردن صحیح(v &: وکتور<صحیح>، n: صحیح، x: صحیح)
وکتور صحیح با n مقدار یکسان.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

پرکردن اعشاری FillFloat

روال پرکردن اعشاری(v &: وکتور<اعشار۶۴>، n: صحیح، x: اعشار۶۴)
وکتور اعشاری با n مقدار یکسان.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Paths.salam

پرکردن منطقی FillBool

روال پرکردن منطقی(v &: وکتور<منطقی>، n: صحیح، x: منطقی)
وکتور منطقی با n مقدار یکسان.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

دنباله Iota

روال دنباله(v &: وکتور<صحیح>، n: صحیح)
۰ تا n منهای یک.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

بیشینه صحیح MaxInt

روال بیشینه صحیح(v: وکتور<صحیح>): صحیح
بیشینه.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

مجموع صحیح SumInt

روال مجموع صحیح(v: وکتور<صحیح>): صحیح
مجموع صحیح.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

مجموع اعشاری SumFloat

روال مجموع اعشاری(v: وکتور<اعشار۶۴>): اعشار۶۴
مجموع اعشاری.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

وارونه‌سازی ReverseInt

روال وارونه‌سازی(v &: وکتور<صحیح>)
وکتور را درجا برعکس می‌کند.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

به فهرست یال ToEdgeList

روال به فهرست یال(g &: گراف): رشته
متن فهرست یال‌ها.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

از فهرست یال FromEdgeList

روال از فهرست یال(text: رشته، n: صحیح، directed: منطقی): گراف
گراف از متن، هر سطر «سر ته وزن» که وزن اختیاری است.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

به فهرست مجاورت ToAdjacencyList

روال به فهرست مجاورت(g &: گراف): رشته
متن فهرست مجاورت.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

به متن ماتریس ToMatrixText

روال به متن ماتریس(g &: گراف): رشته
متن ماتریس مجاورت.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

به دات ToDot

روال به دات(g &: گراف): رشته
متن Graphviz DOT برای رسم.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

به مرمید ToMermaid

روال به مرمید(g &: گراف): رشته
متن Mermaid برای رسم در Markdown.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

به جیسون ToJSON

روال به جیسون(g &: گراف): رشته
جیسون گره‌ها و یال‌ها، مناسب D3.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

توصیف Describe

روال توصیف(g &: گراف): رشته
خلاصه‌ی یک‌خطی ویژگی‌ها.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

دایکسترا Dijkstra

روال دایکسترا(g &: گراف، src: صحیح، dist &: وکتور<اعشار۶۴>، parent &: وکتور<صحیح>): منطقی
کوتاه‌ترین فاصله‌ها از مبدأ با وزن نامنفی.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Paths.salam

فاصله دایکسترا DijkstraDist

روال فاصله دایکسترا(g &: گراف، src: صحیح): وکتور<اعشار۶۴>
فقط فاصله‌ها.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Paths.salam

کوتاه‌ترین مسیر ShortestPath

روال کوتاه‌ترین مسیر(g &: گراف، s: صحیح، t: صحیح): وکتور<صحیح>
کوتاه‌ترین مسیر وزن‌دار.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Paths.salam

طول کوتاه‌ترین مسیر ShortestPathLength

روال طول کوتاه‌ترین مسیر(g &: گراف، s: صحیح، t: صحیح): اعشار۶۴
طولش.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Paths.salam

بلمن فورد BellmanFord

روال بلمن فورد(g &: گراف، src: صحیح، dist &: وکتور<اعشار۶۴>، parent &: وکتور<صحیح>): منطقی
کوتاه‌ترین فاصله‌ها با وزن منفی؛ اگر دور منفی باشد، نادرست.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Paths.salam

یافتن دور منفی FindNegativeCycle

روال یافتن دور منفی(g &: گراف): وکتور<صحیح>
یک دور منفی.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Paths.salam

دارای دور منفی HasNegativeCycle

روال دارای دور منفی(g &: گراف): منطقی
دور منفی دارد.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Paths.salam

پیمایش صفر یک ZeroOneBFS

روال پیمایش صفر یک(g &: گراف، src: صحیح، dist &: وکتور<اعشار۶۴>، parent &: وکتور<صحیح>): منطقی
کوتاه‌ترین فاصله‌ها برای وزن‌های صفر و یک.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Paths.salam

بیشینه خوشه MaxClique

روال بیشینه خوشه(g &: گراف): وکتور<صحیح>
بزرگ‌ترین خوشه؛ برای گراف کوچک.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Flow.salam

عدد خوشه CliqueNumber

روال عدد خوشه(g &: گراف): صحیح
اندازه‌ی بزرگ‌ترین خوشه.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Flow.salam

بیشینه مجموعه مستقل MaximumIndependentSet

روال بیشینه مجموعه مستقل(g &: گراف): وکتور<صحیح>
بزرگ‌ترین مجموعه‌ی مستقل.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Flow.salam

عدد استقلال IndependenceNumber

روال عدد استقلال(g &: گراف): صحیح
عدد استقلال.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Flow.salam

عدد پوشش رأسی VertexCoverNumber

روال عدد پوشش رأسی(g &: گراف): صحیح
عدد پوشش رأسی.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Flow.salam

پوشش رأسی حریصانه GreedyVertexCover

روال پوشش رأسی حریصانه(g &: گراف، cover &: وکتور<منطقی>): صحیح
پوشش رأسی حریصانه.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Flow.salam

خوشگی محلی LocalClustering

روال خوشگی محلی(g &: گراف، u: صحیح): اعشار۶۴
ضریب خوشگی گره.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

میانگین خوشگی AverageClustering

روال میانگین خوشگی(g &: گراف): اعشار۶۴
میانگین خوشگی.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

تعدی Transitivity

روال تعدی(g &: گراف): اعشار۶۴
تعدی، نسبت مثلث‌ها.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Paths.salam

شمار مثلث TriangleCount

روال شمار مثلث(g &: گراف): صحیح
شمار مثلث‌ها.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

همگون‌گرایی Assortativity

روال همگون‌گرایی(g &: گراف): اعشار۶۴
همگون‌گرایی درجه.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

رتبه مدار CircuitRank

روال رتبه مدار(g &: گراف): صحیح
رتبه‌ی مدار.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

قطر وزنی WeightedDiameter

روال قطر وزنی(g &: گراف): اعشار۶۴
قطر وزنی.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

یکریخت Isomorphic

روال یکریخت(a &: گراف، b &: گراف): منطقی
دو گراف یکریخت‌اند.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Trees.salam

نگاشت یکریختی IsomorphismMap

روال نگاشت یکریختی(a &: گراف، b &: گراف، map &: وکتور<صحیح>): منطقی
نگاشت یکریختی.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

شمار خودریختی AutomorphismCount

روال شمار خودریختی(g &: گراف): صحیح
شمار خودریختی‌ها.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

گرافیک است IsGraphical

روال گرافیک است(seq: وکتور<صحیح>): منطقی
دنباله‌ی درجه‌ای می‌تواند گراف ساده باشد.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

هاول حکیمی HavelHakimi

روال هاول حکیمی(seq: وکتور<صحیح>): گراف
گراف ساده با دنباله‌ی درجه.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

دنباله درجه یکسان SameDegreeSequence

روال دنباله درجه یکسان(a &: گراف، b &: گراف): منطقی
دنباله‌ی درجه یکسان.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Analysis.salam

مؤلفه‌ها Components

روال مؤلفه‌ها(g &: گراف، comp &: وکتور<صحیح>): صحیح
شماره‌ی مؤلفه‌ی هر گره؛ شمار مؤلفه‌ها را برمی‌گرداند.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Search.salam

شمار مؤلفه ComponentCount

روال شمار مؤلفه(g &: گراف): صحیح
شمار مؤلفه‌ها.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Search.salam

اندازه مؤلفه‌ها ComponentSizes

روال اندازه مؤلفه‌ها(g &: گراف): وکتور<صحیح>
اندازه‌ی مؤلفه‌ها.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Search.salam

همبند است IsConnected

روال همبند است(g &: گراف): منطقی
همبند است.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Search.salam

دوبخشی است IsBipartite

روال دوبخشی است(g &: گراف، color &: وکتور<صحیح>): منطقی
دوبخشی است و رنگ دوبخش را پر می‌کند.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Search.salam

دوبخشی Bipartite

روال دوبخشی(g &: گراف): منطقی
دوبخشی است.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Build.salam

مرتب‌سازی توپولوژیک TopologicalSort

روال مرتب‌سازی توپولوژیک(g &: گراف، order &: وکتور<صحیح>): منطقی
ترتیب توپولوژیک گراف جهت‌دار؛ اگر دور باشد، نادرست.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Search.salam

مرتب‌سازی توپولوژیک الفبایی TopologicalSortLex

روال مرتب‌سازی توپولوژیک الفبایی(g &: گراف، order &: وکتور<صحیح>): منطقی
ترتیب توپولوژیک با کوچک‌ترین شماره در هر گام.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Search.salam

گراف جهت‌دار بی‌دور است IsDAG

روال گراف جهت‌دار بی‌دور است(g &: گراف): منطقی
گراف جهت‌دار بی‌دور است.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Search.salam

یافتن دور FindCycle

روال یافتن دور(g &: گراف): وکتور<صحیح>
یک دور.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Search.salam

دارای دور HasCycle

روال دارای دور(g &: گراف): منطقی
دور دارد.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: graph-Search.salam