Matematik nazariyada va informatikada graf — bu tugunlar(uchlar)dan iborat bo'lgan bo'sh bo'lmagan to'plam va tugunlarni birlashtiruvchi yoylar majmuidir.
Graf - bu murakkab chiziqsiz ko'pbog'lamli dinamik tuzilma bo'lib, murakkab ob'ektlarning xususiyatlari va munosabatlarini aks ettiradi.
«Graf» tushunchasini birinchi marotaba 1936 yil vengriya matematigi Denni Kyonig kiritgan. Lekin graflar nazariyasi bo'yicha 1-ish Leonard Eylerga tegishli bo'lgan va u 1736 yilda bajarilgan edi.
XVIII asrda mashhur shvetsariyalik matematik, mexanik va fizik Leonard Eyler (1707-1783 yy) Kyonigsberg ko’prigi haqidagi masalani yechish uchun birinchi marta graf tushunchasidan foydalanadi.
Graflar nazariyasi diskret matematika fanining bir bo’limi bo’lib, unda masalalar yechimlari chizmalar shaklida izlanadi. Keyingi paytlarda turli xil diskret xususiyatlarga ega bo‘lgan xisoblash qurilmalarini loyihalashda graflarning ahamiyati yanada oshdi.
V – to`plam elementlari grafning uchlari deyiladi.
Yo’naltirilmagan, yo’naltirilgan va o’girlikka ega bo’lgan graflarni kompyuter dasturlash tillari hotirasida ifodalash, ya'ni xotirada tashkil etish uchun statik tuzilmasi matritsadan yoki dinamik tuzilmasi ro’yxatlardan foydalanish mumkin. Har qanday masalalarida har bitta usulining o’zining afzalligi va kamchiliklariga egadir. Yo’naltirilmagan, yo’naltirilgan va o’girlikka ega bo’lgan graflarni ifodalash uchun har usulining o’zining qoida asosida shakllanadi. Shunday to’rtta usullarga to’xtalib o’tamiz: