Премини към съдържанието
Форумът в приложение

По-лесно сърфиране. Научи повече.

Kaldata.com - Форуми

Приложение на форума на цял екран с push известия, значки и други.

За да инсталирате това приложение на iOS и iPadOS
  1. Докоснете Иконата за споделяне в Safari
  2. Превъртете менюто и докоснете Добавяне към началния екран.
  3. Докоснете Добавяне в горния десен ъгъл.
За да инсталирате това приложение на Android
  1. Докоснете менюто с 3 точки (⋮) в горния десен ъгъл на браузъра.
  2. Докоснете Добавяне към началния екран или Инсталиране на приложение.
  3. Потвърдете, като докоснете Инсталиране.

Добре дошли!

Добре дошли в нашите форуми, пълни с полезна информация. Имате проблем с компютъра или телефона си? Публикувайте нова тема и ще намерите решение на всичките си проблеми. Общувайте свободно и открийте безброй нови приятели.

Моля, регистрирайте се за да публикувате тема и да получите пълен достъп до всички функции.

 

Малко помощ с граф

Featured Replies

Имам да напрая програмка за граф с разни функцийки и искам някви идеи относно следната функция, която тряя да напрая:

Функция, която брой и визуализира върховете с максимален брой изходящи дъги в графа

 

Ето кода, тряя да добавя тая функция, просто искам идея, не код

 

#include<iostream>using namespace std;const int n=10; struct link {	 char key;	 link *next; } *g[n]; void print(link *g[n]) {	 link *p;	 {		 for(int i=0; i<n; i++)		 {			 if(g[i])			 {				 p=g[i];				 while(p)				 {					 cout<<p->key;					 p=p->next;				 }				 cout<<endl;			 }		 }	 } } void init(link *g[n]) {	 for(int i=0;i<n;i++)		 g[i]=NULL; }int search_node(char c, link *g[n])//tursene na vruh {	 int flag=0;	 for(int i=0;i<n;i++)		 if(g[i])			 if(g[i]->key==c)				 flag=1;	 return flag; }int search_arc(char c1, char c2, link *g[n])//tursene na duga {	 int flag=0;	 if(search_node(c1,g) && (search_node(c2,g)))	 {		 int i=0;		 while(g[i]==NULL||g[i]->key!=c1)i++;		 link *p=g[i]->next;		 if(p)		 {			 while(p->key!=c2 && p->next)				 p=p->next;			 if(p->key==c2)				 flag=1;		 }	 }	 return flag;} void add_node(char c, link *g[n])//dobavqne na vruh {	 if(search_node(c,g))		 cout<<"In Exsitsing node: ";	 else		 {int i=0;	 while(g[i]&&i<n) i++;	 if(g[i]==NULL)	 {		 g[i]=new link;		 g[i]->key=c;		 g[i]->next=NULL;	 }	 else cout<<"Overflow"; } } void add_arc (char c1, char c2, link *g[n])//dobavqne na duga {	 if (search_arc(c1,c2,g))	 {		 cout<<"In Existing arc";}	 else	 {		 if(!(search_node(c1,g)))			 add_node(c1,g);		 if(!(search_node(c2,g)))			 add_node(c2,g);		 int i=0;		 while(g[i]==NULL||g[i]->key!=c1)			 i++;		 link *p=new link;		 p->key=c2;		 p->next=g[i]->next;		 g[i]->next=p;	 }	 } int main() {	char c,k;	int m;	do	{		cout<<"n  MENU   ";		cout<<"n 1.Add node ";		cout<<"n 2.Add arc ";		cout<<"n 3.Print All ";		cout<<"n 4.End ";		cout<<"n Choice: ";		cin>>m;		switch(m)		{		case 1:			{				cout<<"n Node: ";				cin>>c;				add_node(c, g);				break;			}		case 2:			{				cout<<"n First node";				cin>>c;				cout<<"n Second node";				cin>>k;				add_arc(c, k, g);				break;			}		case 3:			{				print(g);			}		}	}	while(m!=4); return 0; }

 

 

При имплементацията на граф, която си направил (т.е. всички върхове са поредни елементи в масив), какво ти пречи да обходиш всички върхове, да намериш дължината на списъка с дъги на всеки и оттам и този с максимален брой?

Архивирана тема

Темата е твърде стара и е архивирана. Не можете да добавяте нови отговори в нея, но винаги можете да публикувате нова тема, в която да продължи дискусията. Регистрирайте се или влезте във вашия профил за да публикувате нова тема.

Разглеждащи това в момента 0

  • Няма регистрирани потребители разглеждащи тази страница.

Дарение

  • Подкрепи съществуването на форума - направи дарение
    32%
    Дарени 315 € от нужните 1 000 €

Бюлетин

Получавайте известие, когато има важна промяна или новина свързана с форума.

Профил

Навигация

Търсене

Търсене

Конфигуриране на push известия в браузъра

Chrome (Android)
  1. Докоснете иконата на катинар до адресната лента.
  2. Докоснете Разрешения → Известия.
  3. Променете предпочитанията си.
Chrome (Desktop)
  1. Кликнете върху иконата на катинар в адресната лента.
  2. Изберете Настройки на сайта.
  3. Намерете Известия и коригирайте предпочитанията си.