Shamel

Untitled

Dec 9th, 2019
64
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.85 KB | None | 0 0
  1.  
  2. import java.util.ArrayList;
  3. import java.util.Iterator;
  4. import java.util.ListIterator;
  5. import java.util.Random;
  6. import java.util.Scanner;
  7.  
  8. import static java.lang.System.out;
  9.  
  10. public class Lab31p2
  11. {
  12.     public static void main(String args[])
  13.     {
  14.         MyList list1 = new MyStack(100);
  15.         MyList list2 = new MyQueuee(100);
  16.         OurList list3 = new OurSet();
  17.         OurList list4 = new OurOrdList();
  18.         Random rnd = new Random(12345);
  19.         for (int k = 1; k <= 20; k++)
  20.         {
  21.             int rndInt = rnd.nextInt(20) + 10;
  22.             addData(list1,rndInt);
  23.             addData(list2,rndInt);
  24.             addOurData(list3,rndInt);
  25.             addOurData(list4,rndInt);
  26.         }
  27.         showData(list1,list2,list3,list4);
  28.         out.println();
  29.  
  30.         for (int k = 1; k <= 5; k++)
  31.         {
  32.             removeData(list1);
  33.             removeData(list2);
  34.             //  ask the user right here what element to remove from each list
  35.  
  36.             out.print("What element do you want removed? ==> ");
  37.             Scanner f=new Scanner(System.in);
  38.             int element=f.nextInt();
  39.             removeOurData(list3, element );
  40.             removeOurData(list4, element );
  41.         }
  42.         showData(list1,list2,list3,list4);
  43.         out.println();
  44.     }
  45.     public static void addData(MyList l1, int x)
  46.     {
  47.         l1.add(x);
  48.     }
  49.     public static void removeData(MyList l1)
  50.     {
  51.         l1.remove();
  52.     }
  53.     public static void showData(MyList l1, MyList l2,OurList l3, OurList l4)
  54.     {
  55.         out.println(l1);
  56.         out.println(l2);
  57.         out.println(l3);
  58.         out.println(l4);
  59.     }
  60.  
  61.     public static void addOurData(OurList l1,int x)
  62.     {
  63.         l1.add(x);
  64.     }
  65.  
  66.      public static void removeOurData(OurList l1,int x)
  67.      {
  68.         l1.remove(x);
  69.      }
  70.  
  71. }
  72.  
  73. abstract class OurList
  74. {
  75.     public abstract void add(int x);
  76.  
  77.     public abstract boolean remove(int x);
  78.  
  79.     public abstract boolean isEmpty();
  80.  
  81.     public abstract int getSize();
  82. }
  83.  
  84. class OurSet extends OurList {
  85.     private ArrayList<Integer> arr;
  86.     private int                end;
  87.  
  88.     public OurSet() {
  89.         arr = new ArrayList<Integer>();
  90.         end = 0;
  91.     }
  92.  
  93.     public void add(int x) {
  94.         boolean TF = false;
  95.         ListIterator<Integer> iter = arr.listIterator();
  96.  
  97.         while (iter.hasNext()) {
  98.             if ((Integer) iter.next() == x)
  99.                 TF = true;
  100.         }
  101.  
  102.         if (TF == false) {
  103.             iter.add(x);
  104.             end++;
  105.         }
  106.     }
  107.  
  108.     public boolean remove(int x) {
  109.         ListIterator<Integer> iter = arr.listIterator();
  110.         while (iter.hasNext()) {
  111.             if (iter.next() == x) {
  112.                 iter.remove();
  113.                 end--;
  114.                 return true;
  115.             }
  116.         }
  117.         return false;
  118.     }
  119.  
  120.     public boolean isEmpty() {
  121.         return end == 0;
  122.     }
  123.  
  124.     public int getSize() {return end;}
  125.  
  126.     public String toString() {
  127.         ListIterator<Integer> iter = arr.listIterator();
  128.         String ret = "[";
  129.         while (iter.hasNext()) {
  130.             int x=iter.next();
  131.             if (!iter.hasNext()) {
  132.                 ret = ret + x + "] ";
  133.  
  134.  
  135.             } else
  136.                 ret = ret + x + ", ";
  137.  
  138.         }
  139.             return ret;
  140.  
  141.     }
  142. }
  143.  
  144. class OurOrdList extends OurList {
  145.     private ArrayList<Integer> arr;
  146.     private int                end;
  147.  
  148.     public OurOrdList() {
  149.         arr = new ArrayList<Integer>();
  150.         end = 0;
  151.     }
  152.  
  153.     public void add(int x) {
  154.         boolean TF = false;
  155.         int ex = 0;
  156.         int exx;
  157.         ListIterator<Integer> iter = arr.listIterator();
  158.         while (iter.hasNext() && TF == false) {
  159.             ex = iter.next();
  160.             if (x <= ex) {
  161.                 iter.set(x);
  162.                 iter.add(ex);
  163.                 end++;
  164.                 TF = true;
  165.  
  166.             }
  167.  
  168.         }
  169.  
  170.  
  171.         if (TF == false) {
  172.             iter.add(x);
  173.             TF = true;
  174.             end++;
  175.  
  176.         }
  177.     }
  178.  
  179.     public boolean remove(int x) {
  180.         ListIterator<Integer> iter = arr.listIterator();
  181.         while (iter.hasNext()) {
  182.             if (iter.next() == x) {
  183.                 iter.remove();
  184.                 end--;
  185.                 return true;
  186.             }
  187.         }
  188.         return false;
  189.     }
  190.  
  191.     public boolean isEmpty() {
  192.         return end == 0;
  193.     }
  194.  
  195.     public int getSize() {return end;}
  196.  
  197.     public String toString() {
  198.         ListIterator<Integer> iter = arr.listIterator();
  199.         String ret = "[";
  200.         while (iter.hasNext()) {
  201.             int x=iter.next();
  202.             if (!iter.hasNext()) {
  203.                 ret = ret + x + "] ";
  204.  
  205.  
  206.             } else
  207.                 ret = ret + x + ", ";
  208.  
  209.         }
  210.  
  211.         return ret;
  212.     }
  213. }
Add Comment
Please, Sign In to add comment