Logo

Programming-Idioms

This language bar is your friend. Select your favorite languages!
  • Python
from collections import defaultdict
class Vertex(set): pass
class Graph(defaultdict):
  def __init__(self, *paths):
    self.default_factory = Vertex
    for path in paths:
      self.make_path(path)

  def make_path(self, labels):
    for l1, l2 in zip(labels, labels[1:]):
      self[l1].add(l2)
      self[l2].add(l1)

G = Graph((0, 1, 2, 3), (1, 4, 2))
struct Vertex
{
	float x, y, z;
	Vertex* [] adjacentVertices;
}

New implementation...