Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Имеется n пользователей, каждому из них соответствует список email-ов (всего у всех пользователей m email-ов).
- Например:
- user1 -> xxx@ya.ru, foo@gmail.com, lol@mail.ru
- user2 -> foo@gmail.com, ups@pisem.net
- user3 -> xyz@pisem.net, vasya@pupkin.com
- user4 -> ups@pisem.net, aaa@bbb.ru
- user5 -> xyz@pisem.net
- Считается, что если у двух пользователей есть общий email, значит это один и тот же пользователь. Требуется построить
- и реализовать алгоритм, выполняющий слияние пользователей. На выходе должен быть список пользователей с их email-ами (такой же как на входе).
- Возможный ответ на задачу в указанном примере:
- user1 -> xxx@ya.ru, foo@gmail.com, lol@mail.ru, ups@pisem.net, aaa@bbb.ru
- user3 -> xyz@pisem.net, vasya@pupkin.com
- public class User {
- private String mName;
- private List<String> mAdress;
- public User(String mName,List<String>mAdress) {
- this.mName=mName;
- this.mAdress = mAdress;
- }
- public List<String> getmAdress() {
- return mAdress;
- }
- public void setmAdress(List<String> mAdress) {
- this.mAdress = mAdress;
- }
- public String getmName() {
- return mName;
- }
- public void setmName(String mName) {
- this.mName = mName;
- }
- }
- public class Main {
- public static void main(String[] args) {
- ArrayList arrayList = new ArrayList();
- arrayList.add("asnjvkn@mail.ru");
- arrayList.add("sfaf@mail.ru");
- arrayList.add("asnjvkn@mail.ru");
- arrayList.add("asnjvkn@mail.ru");
- arrayList.add("cxv@mail.ru");
- arrayList.add("asnjvkn@mail.ru");
- arrayList.add("vxcv@mail.ru");
- User user = new User("user1",arrayList);
- ArrayList arrayList2 = new ArrayList();
- arrayList2.add("cxz@mail.ru");
- arrayList2.add("sfaxzvzf@mail.ru");
- arrayList2.add("asnjvkn@mail.ru");
- arrayList2.add("xv@mail.ru");
- arrayList2.add("cxv@mail.ru");
- arrayList2.add("asnjvkn@mvxail.ru");
- arrayList2.add("vxzvcv@mail.ru");
- User user2 = new User("user2",arrayList2);
- ArrayList arrayList3 = new ArrayList();
- arrayList3.add("sd@mail.ru");
- arrayList3.add("sfsdvaxzvzf@mail.ru");
- arrayList3.add("vd@mail.ru");
- arrayList3.add("xv@mail.ru");
- arrayList3.add("dsdvvs@mail.ru");
- arrayList3.add("asnjvkn@mvxail.ru");
- arrayList3.add("vxzvcv@mail.ru");
- User user3 = new User("user3",arrayList3);
- List<User> userList = new ArrayList<>();
- userList.add(user);
- userList.add(user2);
- userList.add(user3);
- userIdentification(userList);
- }
- public static void userIdentification(List<User> userList){
- List<User> identifiedUser = new ArrayList<>();
- for (User singleUser: userList){
- for (int i = 0; i<singleUser.getmAdress().size();i++){
- for(User idenUser: identifiedUser){
- if (idenUser.getmAdress().contains(singleUser.getmAdress().get(i))){
- System.out.println("true");
- }else{
- System.out.println("false");
- }
- }
- }
- }
- }
- }
Add Comment
Please, Sign In to add comment