我得上一堂PhoneBook课。除了两种方法之外,我已经完成了所有的方法。我需要一些关于如何做它们的帮助。1.存在PhoneEntry类。= a.编写一个存储PhoneEntry对象的PhoneBook类。添加以下方法。三、addInOrder(PhoneEntry a)这是插入排序v.lookup(字符串名称)-返回与姓名关联的电话号码。使用二进制搜索
这两个我都不知道该怎么做。我已经做了一些addInOrder,但没有查找。这就是我到目前为止所知道的:
public void addInOrder(PhoneEntry a) {
for (int outer = 1; outer < book.size(); outer++) {
int position = outer;
String key = (a.get(position);
// shift larger values to right
while (position > 0 && a.get(position - 1).compareTo(key) > 0) {
(a.get(position)).equals(a.get(position - 1));
position--;
}
a.get(position).equals(key);
}
}
public String lookUp(String name) {
}发布于 2015-03-25 07:40:40
addInOrder只需在条目的末尾添加,如果性能不相关或元素很少,则进行排序(您可以使用Collections.sort轻松进行排序)。一种更快的方法是保持条目从头开始排序,以便更快地找到要添加的位置。
lookup遍历所有条目,检查每个名称,如果相等,则返回电话。一种更快的方法是保留一个Map,其中键是名称。
https://stackoverflow.com/questions/29244016
复制相似问题