Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
 package com.thaiopensource.validate.nrl;
 
 class IntSet {
   static private final int INIT_SIZE = 4;
   private int[] v = null;
   private int len = 0;
 
   void add(int n) {
     if ( == null) {
       = new int[];
      [0] = n;
       = 1;
      return;
    }
    if ( == .) {
      int[] newv = new int[*2];
      System.arraycopy(, 0, newv, 0, );
       = newv;
    }
    if (n > [ - 1]) {
      [++] = n;
      return;
    }
    int i = 0;
    for (; i < i++) {
      if (n <= [i]) {
        if (n == [i])
          return;
        break;
      }
    }
    for (int j = j >= ij--)
      [j + 1] = [j];
    [i] = n;
    ++;
  }
  void addAll(IntSet is) {
    if (is.len == 0)
      return;
    int[] newv = new int[ + is.len];
    int i = 0, j = 0, k = 0;
    while (i <  && j < is.len) {
      if ([i] < is.v[j])
        newv[k++] = [i++];
      else if (is.v[j] < [i])
        newv[k++] = is.v[j++];
      else {
        newv[k++] = [i++];
        j++;
      }
    }
    while (i < )
      newv[k++] = [i++];
    while (j < is.len)
      newv[k++] = is.v[j++];
     = newv;
     = k;
  }
  int size() {
    return ;
  }
  int get(int i) {
   if (i >= )
     throw new IndexOutOfBoundsException();
    try {
      return [i];
    }
    catch (NullPointerException e) {
      throw new IndexOutOfBoundsException();
    }
  }
New to GrepCode? Check out our FAQ X