special_forces

Untitled

Apr 7th, 2022
49
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.36 KB | None | 0 0
  1. class SortedIntegerList {
  2.  
  3.     LinkedList<Integer> sortedList = new LinkedList<Integer>();
  4.     int number = 0;
  5.     boolean isRepeatElements = true;
  6.  
  7.     SortedIntegerList(boolean isRepElemet) {
  8.         isRepeatElements = isRepElemet;
  9.     }
  10.  
  11.     SortedIntegerList(int isRepElemet) {
  12.         try {
  13.             if (isRepElemet != 1 || isRepElemet != 0) {
  14.                 throw new Exception("Only 1 or 0!");
  15.             }
  16.             if (isRepElemet == 1) {
  17.                 isRepeatElements = true;
  18.             } else {
  19.                 isRepeatElements = false;
  20.             }
  21.         } catch (Exception ex) {
  22.             System.out.println(ex.getMessage());
  23.         }
  24.     }
  25.  
  26.     int size() {
  27.         return sortedList.size();
  28.     }
  29.  
  30.     void add(int num) {
  31.         if (size() == 0) {
  32.             sortedList.add(num);
  33.             return;
  34.         }
  35.         int index = 0;
  36.         int indexSet = 0;
  37.         for (ListIterator<Integer> i = sortedList.ListIterator(); i.hasNext();) {
  38.             Integer element = (Integer) i.next();
  39.             if (element.intValue() == num) {
  40.                 if (!isRepeatElements) {
  41.                     return;
  42.                 }
  43.             }
  44.             if (num >= element.intValue()) {
  45.                 indexSet = index + 1; // i+1
  46.                 i.add(8);
  47.  
  48.             } else {
  49.                 indexSet = index;
  50.                 break;
  51.             }
  52.             index++;
  53.         }
  54.         sortedList.add(indexSet, num);
  55.     }
  56.  
  57.     void remove(int num) {
  58.         int index = 0;
  59.         int indexSet = -1;
  60.         for (Iterator<Integer> i = sortedList.iterator(); i.hasNext();) {
  61.             Integer element = (Integer) i.next();
  62.             if (element.intValue() == num) {
  63.                 indexSet = index;
  64.                 i.remove();
  65.                 return;
  66.             }
  67.  
  68.             index++;
  69.         }
  70.         if (indexSet != -1) {
  71.             sortedList.remove(indexSet);
  72.         }
  73.  
  74.     }
  75.  
  76.     void print() {
  77.         for (Iterator<Integer> i = sortedList.iterator(); i.hasNext();) {
  78.             Integer element = (Integer) i.next();
  79.             System.out.print(element + "  ");
  80.         }
  81.         System.out.print("\n");
  82.     }
  83.  
  84.     Iterator<Integer> iteratorIntegerList() {
  85.         return sortedList.iterator();
  86.     }
  87.  
  88.     public boolean equals(Object o) {
  89.         SortedIntegerList a = (SortedIntegerList) o;
  90.         if (this.hashCode() != o.hashCode()) {
  91.             return false;
  92.         }
  93.         if (o instanceof SortedIntegerList) {
  94.             if (size() != a.size()) {
  95.                 return false;
  96.             } else {
  97.                 Iterator<Integer> i1 = sortedList.iterator();
  98.                 Iterator<Integer> i2 = a.iteratorIntegerList();
  99.  
  100.                 while (i1.hasNext()) {
  101.                     Integer element1 = (Integer) i1.next();
  102.                     Integer element2 = (Integer) i2.next();
  103.                     if (element1 != element2) {
  104.                         return false;
  105.                     }
  106.                 }
  107.                 return true;
  108.             }
  109.         } else {
  110.             return false;
  111.         }
  112.     }
  113. }
  114.  
Advertisement
Add Comment
Please, Sign In to add comment