Advertisement
Guest User

Untitled

a guest
Aug 16th, 2017
65
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.88 KB | None | 0 0
  1.  
  2. /*
  3.  * To change this template, choose Tools | Templates
  4.  * and open the template in the editor.
  5.  */
  6.  
  7. /**
  8.  *
  9.  * @author R4bbiT
  10.  */
  11.  
  12. /**
  13.  *
  14.  * 5. Übungsblatt  (6. −−  13. Mai 2011)
  15.  */
  16.  
  17. public class StringSet {
  18.     /* VARIABLEN */
  19.     protected String[] a;
  20.     protected int n;
  21.    
  22.     /* KONSTRUKTOREN */
  23.     StringSet(int n){
  24.     this.a = new String[n];
  25.     this.n = n;
  26.     }
  27.  
  28.     StringSet(int n, String s){
  29.     this(n);
  30.     this.insert(s);
  31.     }
  32.  
  33.     /* METHODEN */
  34.     int capacity(){
  35.     return this.n;
  36.     }
  37.  
  38.     int card(){
  39.     int i, x=0;
  40.     for(i=0; i<this.a.length; i++){
  41.         if(this.a[i] != null) x++;
  42.     }
  43.     return x;
  44.     }
  45.  
  46.     public void print(){
  47.     int i, x=0;
  48.     System.out.print("{ ");
  49.     for(i=0; i<this.a.length; i++){
  50.         if(this.a[i] != null){
  51.         System.out.print((x > 0 ? ", " : "" ) + a[i]);
  52.         x++;
  53.         }
  54.     }
  55.     System.out.print(" }");
  56.     }
  57.  
  58.     boolean contains(String s){
  59.     int i;
  60.     for(i=0; i<this.a.length; i++){
  61.         if(this.a[i] != null){
  62.         if(this.a[i].equals(s)) return true;
  63.         }
  64.     }
  65.     return false;
  66.     }
  67.  
  68.     boolean insert(String s){
  69.     int i;
  70.     if(this.contains(s)) return true;
  71.     for(i=0; i<this.a.length; i++){
  72.         if(this.a[i] == null){
  73.         this.a[i] = s;
  74.         return true;
  75.         }
  76.     }
  77.     return false;
  78.     }
  79.  
  80.     boolean remove(String s){
  81.     int i;
  82.     for(i=0; i<this.a.length; i++){
  83.         if(this.a[i] != null){
  84.         if(this.a[i].equals(s)){
  85.             this.a[i] = null;
  86.             return true;
  87.         }
  88.         }
  89.     }
  90.     return false;
  91.     }
  92.    
  93.     private StringSet gen_inter(StringSet s){
  94.     int i, x=0;
  95.     for(i=0; i<this.a.length; i++){
  96.         if(s.contains(this.a[i])) x++;
  97.     }
  98.     StringSet ns = new StringSet(x);
  99.     for(i=0; i<this.a.length; i++){
  100.         if(s.contains(this.a[i])) ns.insert(this.a[i]);
  101.     }
  102.     return ns;
  103.     }
  104.  
  105.     public static StringSet intersection(StringSet first, StringSet second){
  106.     return first.gen_inter(second);
  107.     }
  108.  
  109. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement