• Graph

    class Graph(dict):
    def __init__(self, vs=[], es=[]):
    for v in vs:
    self.add_vertex(v)
    for e in es:
    self.add_edge(e)
    # 必须全部的顶点添加完毕之后,才可以添加新的边进去
    def add_vertex(self, v):
    self[v] = {}
    def add_edge(self, e):
    v, w = e
    self[v][w] = e
    self[w][v] = e
    # 无向边以双向连接的方式实现;
  • vertex

    class Vertex(object):
    def __init__(self, label=''):
    self.label = label
    der __repr__(self):
    return 'Vertex(%s)' % self.label
    __str__ = __repr__
  • edge

    class Edge(tuple):
    def __new__(cls, e1, e2):
    return tuple.__new__(cls, (e1, e2))
    def __repr(self):
    return 'Edge(%s, %s)' % (repr(self[0]), repr(self[1]))
    __str__ = __repr__

最新文章

  1. SQL Server 系统数据库
  2. iOS8 tableview separatorInset cell分割线左对齐,ios7的方法失效了
  3. Makefile 编写 tips
  4. log4net详解(转载)
  5. poj2975(nim游戏取法)
  6. [设计模式] 11 享元模式 Flyweight
  7. Java持久化存储对象Properties的方法list、store、load
  8. IIS UrlWriter配置(asp.net)
  9. linux下的openoffice安装和服务自启动
  10. iso学习网站记录
  11. 同行blog收集
  12. C#程序设计六大原则记录
  13. android 获取本机号码需要root吗?
  14. Swift - 将表格UITableView滚动条移动到底部
  15. java微信平台,发源码
  16. node.js fs.open 和 fs.write 读取文件和改写文件
  17. 删除API
  18. vscode plugins
  19. pipenv知识积累
  20. Spring框架事务支持模型的优势

热门文章

  1. testng并发测试与测试并发
  2. SIMPLE QUERY几个原则
  3. sublime课程3 emmet插件中的常用符号有哪些
  4. “locktype”enum type 类型重定义问题的解决
  5. 【66.47%】【codeforces 556B】Case of Fake Numbers
  6. 对spring控制反转以及依赖注入的理解
  7. crx
  8. ITFriend创业阶段的服务器环境搭建手册
  9. [Compose] 11. Use Task for Asynchronous Actions
  10. 前端开发必备调试工具(Chrome的F12自带的功能和firebug插件差不多)