Contact Us!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutSign UpSign In

Real-time collaboration for Jupyter Notebooks, Linux Terminals, LaTeX, VS Code, R IDE, and more,
all in one place. Commercial Alternative to JupyterHub.

| Download
Views: 33
Image: ubuntu2204
def ustvariGraf(n): G = Graph() G.add_vertices(range(n)) return G def dodajVozlisce(G, oznaka): G.add_vertex(oznaka) def odstraniVozlisce(G, oznaka): G.delete_vertex(oznaka) def dodajPovezavo(G, zacetek, konec): G.add_edge(zacetek, konec) def odstraniPovezavo(G, zacetek, konec): G.remove_edge(zacetek, konec) def dodajPovezave(G, seznam_parov): G.add_edges(seznam_parov) def razdaljeOglisc(G): G.distance_all_pairs() def GGI(G): n = G.order() #stevilo ogljisc v grafu vsota = 0 #iteracija po robovih for (u, v,_) in G.edges(): nu_v = sum(1 for x in G.vertices() if G.shortest_path_length(u, x) < G.shortest_path_length(v, x)) nv_u = sum(1 for x in G.vertices() if G.shortest_path_length(v, x) < G.shortest_path_length(u, x)) if nu_v + nv_u - 2 > 0: vsota += sqrt((nu_v + nv_u - 2) / (nu_v * nv_u)) return vsota A = ustvariGraf(4) dodajPovezave(A,[(3,4),(4,0),(1,2),(0,1),(2,3)]) A.plot() vsota = GGI(A) #n je zato ker drugace ne vrne numericne vrednosti print(n(vsota))
3.53553390593274