为了账号安全,请及时绑定邮箱和手机立即绑定

python 自定义链表是否在每个节点中携带所有属性?

python 自定义链表是否在每个节点中携带所有属性?

MM们 2021-10-12 17:34:13
我正在尝试将Python voronoi 图生成器转换为 Java。但是,我无法弄清楚 Arc 类的工作原理。我之前在 Java 中实现了链表,但是这里的实现似乎与我习惯的非常不同。我不完全确定它是一个链表,只是因为稍后使用该类的方式而看起来像它。这里的 Arc 类是否在每个节点中都带有它的所有属性?弧类:class Arc:    p = None         pprev = None     pnext = None     e = None    s0 = None    s1 = None    def __init__(self, p, a=None, b=None):        self.p = p        self.pprev = a        self.pnext = b        self.e = None        self.s0 = None        self.s1 = None正在使用的 Arc 类示例:def process_event(self):    # get next event from circle pq    e = self.event.pop()    if e.valid:        # start new edge        s = Segment(e.p)        self.output.append(s)        # remove associated arc (parabola)        a = e.a  # <-- a is an "Arc" type        if a.pprev is not None:            a.pprev.pnext = a.pnext            a.pprev.s1 = s        if a.pnext is not None:            a.pnext.pprev = a.pprev            a.pnext.s0 = s        # finish the edges before and after a        if a.s0 is not None: a.s0.finish(e.p)        if a.s1 is not None: a.s1.finish(e.p)        # recheck circle events on either side of p        if a.pprev is not None: self.check_circle_event(a.pprev, e.x)        if a.pnext is not None: self.check_circle_event(a.pnext, e.x)
查看完整描述

1 回答

?
慕盖茨4494581

TA贡献1850条经验 获得超11个赞

您的问题中可能存在轻微的命名混乱,但只要我理解正确并举个例子,简短的回答是:是的。

假设节点是指Arc类型对象的每个实例,如第一个片段中构造的那样,所有属性都绑定到一个实例(至少从这个代码中)将它们定义为类属性,上面似乎没有任何特定的服务目的或意义重大。


查看完整回答
反对 回复 2021-10-12
  • 1 回答
  • 0 关注
  • 148 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信