Реализуйте бинарный поиск в объектах
Вы также можете поместить jre компаратор в класс User:
public class User implements Comparable, Comparator
{
public User(int id, String name)
{
this.id = id;
this.name = name;
}
@Override
public int compareTo(User u)
{
return id - u.getID();
}
@Override
public int compare(User u1, User u2)
{
return u1.getID() - u2.getID();
}
public int getID() { return id; }
public String getName() { return name; }
private int id;
private String name;
}
Затем collections вы должны сделать следующее search для ArrayList с именем users:
ArrayList users = new ArrayList();
users.add(new User(3, "Fred"));
users.add(new User(42, "Joe"));
users.add(new User(5, "Mary"));
users.add(new User(17, "Alice"));
Collections.sort(users);
int index = Collections.binarySearch(users, new User(5, null));
if(index >= 0)
System.out.println("The user name of id 5 is: "+users.get(index).getName());
else
System.out.println("ID 5 is not in the list");
java
search
collections
binary-search
2021-12-22T04:33:52+00:00
2022-09-09T12:07:26+00:00
Nilernay
Вопросы с похожей тематикой, как у вопроса:
Реализуйте бинарный поиск в объектах
Предупреждение о файлах Cookies
Мы используем файлы cookies для улучшения работы сайта. Оставаясь на нашем сайте, вы соглашаетесь с условиями использования файлов cookies. Чтобы ознакомиться с нашими Положениями о конфиденциальности и об использовании файлов cookie, нажмите здесь.