Guest User

Untitled

a guest
Aug 16th, 2018
349
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.41 KB | None | 0 0
  1. Имеется n пользователей, каждому из них соответствует список email-ов (всего у всех пользователей m email-ов).
  2. Например:
  3. user1 -> xxx@ya.ru, foo@gmail.com, lol@mail.ru
  4. user2 -> foo@gmail.com, ups@pisem.net
  5. user3 -> xyz@pisem.net, vasya@pupkin.com
  6. user4 -> ups@pisem.net, aaa@bbb.ru
  7. user5 -> xyz@pisem.net
  8.  
  9. Считается, что если у двух пользователей есть общий email, значит это один и тот же пользователь. Требуется построить
  10. и реализовать алгоритм, выполняющий слияние пользователей. На выходе должен быть список пользователей с их email-ами (такой же как на входе).
  11. Возможный ответ на задачу в указанном примере:
  12. user1 -> xxx@ya.ru, foo@gmail.com, lol@mail.ru, ups@pisem.net, aaa@bbb.ru
  13. user3 -> xyz@pisem.net, vasya@pupkin.com
  14.  
  15. public class User {
  16. private String mName;
  17. private List<String> mAdress;
  18.  
  19. public User(String mName,List<String>mAdress) {
  20. this.mName=mName;
  21. this.mAdress = mAdress;
  22. }
  23.  
  24. public List<String> getmAdress() {
  25. return mAdress;
  26. }
  27.  
  28. public void setmAdress(List<String> mAdress) {
  29. this.mAdress = mAdress;
  30. }
  31.  
  32. public String getmName() {
  33. return mName;
  34. }
  35.  
  36. public void setmName(String mName) {
  37. this.mName = mName;
  38. }
  39. }
  40.  
  41.  
  42. public class Main {
  43. public static void main(String[] args) {
  44. ArrayList arrayList = new ArrayList();
  45. arrayList.add("asnjvkn@mail.ru");
  46. arrayList.add("sfaf@mail.ru");
  47. arrayList.add("asnjvkn@mail.ru");
  48. arrayList.add("asnjvkn@mail.ru");
  49. arrayList.add("cxv@mail.ru");
  50. arrayList.add("asnjvkn@mail.ru");
  51. arrayList.add("vxcv@mail.ru");
  52. User user = new User("user1",arrayList);
  53. ArrayList arrayList2 = new ArrayList();
  54. arrayList2.add("cxz@mail.ru");
  55. arrayList2.add("sfaxzvzf@mail.ru");
  56. arrayList2.add("asnjvkn@mail.ru");
  57. arrayList2.add("xv@mail.ru");
  58. arrayList2.add("cxv@mail.ru");
  59. arrayList2.add("asnjvkn@mvxail.ru");
  60. arrayList2.add("vxzvcv@mail.ru");
  61. User user2 = new User("user2",arrayList2);
  62. ArrayList arrayList3 = new ArrayList();
  63. arrayList3.add("sd@mail.ru");
  64. arrayList3.add("sfsdvaxzvzf@mail.ru");
  65. arrayList3.add("vd@mail.ru");
  66. arrayList3.add("xv@mail.ru");
  67. arrayList3.add("dsdvvs@mail.ru");
  68. arrayList3.add("asnjvkn@mvxail.ru");
  69. arrayList3.add("vxzvcv@mail.ru");
  70. User user3 = new User("user3",arrayList3);
  71. List<User> userList = new ArrayList<>();
  72. userList.add(user);
  73. userList.add(user2);
  74. userList.add(user3);
  75.  
  76. userIdentification(userList);
  77.  
  78. }
  79.  
  80.  
  81.  
  82. public static void userIdentification(List<User> userList){
  83. List<User> identifiedUser = new ArrayList<>();
  84. for (User singleUser: userList){
  85. for (int i = 0; i<singleUser.getmAdress().size();i++){
  86. for(User idenUser: identifiedUser){
  87. if (idenUser.getmAdress().contains(singleUser.getmAdress().get(i))){
  88. System.out.println("true");
  89. }else{
  90. System.out.println("false");
  91. }
  92. }
  93. }
  94.  
  95. }
  96.  
  97. }
  98.  
  99.  
  100.  
  101. }
Add Comment
Please, Sign In to add comment