我确实有int
对集合,即; (int,int)集合集合中的唯一集合
1)给定k个这样的对,检查它们是否唯一。即;使用k对形成的集合的大小是k? 2)如果给定的k个记录是唯一的,则按排序顺序(按x和y解决冲突)存储它们。3)给定n个这样的k组,
的要求1实施例和图2
如果k = 3
(100,100)(110,300)(120,200)是一组有效的和以排序的顺序。 (100,100)(300,200)(200,300)是有效集合,但不是按排序顺序。
(100,100)(100,200)(100,200)是在有效集的要求3
输入
实施例:
(100,100)(200,300 )(300,200)
(100,100)(200,300)(300,200)
(100,100)(201,300)(300,200)
输出:
(100,100)(200,300)(300,200)
(100,100)(201,300)(300,200)
这是最接近类似于我正面临着真正的问题。我需要用Java完成这项工作,而且我从未在java中工作过。我是一名中级C++程序员。
我可以解决1和2通过一些丑陋的编码和排序。
但是我不能够得到3.下面是我能得到迄今3类对实现可比
(POC代码)
import java.util.HashSet;
public class set {
public static void main (String []args) {
HashSet<Pair> s1 = new HashSet();
s1.add(new Pair(10,10));
s1.add(new Pair(10,10));
HashSet<Pair> s2 = new HashSet();
s2.add(new Pair(10,10));
s2.add(new Pair(10,10));
HashSet<HashSet<Pair>> s12 = new HashSet();
s12.add(s1);s12.add(s2);
for (HashSet<Pair> hs : s12) {
for (Pair p : hs) {
System.out.println(""+ p.toString());
}
}
}
}
这是一门功课? –
是和否 我开始通过作业问题探索计算几何算法。在移动行扫描和其他算法之前,我想自己试一试 http://en.wikipedia.org/wiki/Line_segment_intersection –
HashSet代码的HashSet究竟有什么错误?它看起来不错,给予或采取一些未经检查的操作。 –