0
我正在为具有邻接列表的学校作业实施图表。我遇到搜索方法的麻烦。我想问你下面的问题:图形抽象数据类型:搜索方法。
如果你正在搜索一个不在图中的顶点,它应该是一个错误吗? 哪一个是确定可能的结果是否为错误的最佳标准?
谢谢你,来自阿根廷 冈萨罗(希望你能理解我的英语。)
我正在为具有邻接列表的学校作业实施图表。我遇到搜索方法的麻烦。我想问你下面的问题:图形抽象数据类型:搜索方法。
如果你正在搜索一个不在图中的顶点,它应该是一个错误吗? 哪一个是确定可能的结果是否为错误的最佳标准?
谢谢你,来自阿根廷 冈萨罗(希望你能理解我的英语。)
一种解决方案是抛出一个NoSuchElementException
如果元素是不存在的。
另一种解决方案可能是使用类似斯卡拉的Option
或哈斯克尔的Maybe
。
另一种可能的解决方案是引入一对方法boolean contains(VertexID id)
和Vertex get(VertexID id)
。 只有当他知道该元素在那里时,类才应使用查询方法contains
来搜索元素和吸气者的存在。 当然,get
应该抛出一个NoSuchElementException
如果它被调用缺少的元素。
抛出异常是否正确?当你搜索某些东西时,你总是找不到它。 –
我添加了另一个解决此问题的可能解决方案 – mariosangiorgio
谢谢!这非常有帮助。 –