<gouthampradhan>array_MinimumSwapsToGroupAll1Together_1.java
public int minSwaps(int[] data) {
    int one = 0;
    int zero = 0;
    for (int i = 0; i < data.length; i++) {
      if (data[i] == 1) {
        one++;
      } else zero++;
    }
    if (one == 0) return 0;
    int window = one;
    one = 0;
    zero = 0;
    int i = 0, j = window - 1;
    for (int k = i; k <= j; k++) {
      if (data[k] == 1) {
        one++;
      } else zero++;
    }
    i++;
    j++;
    int min = zero;
    for (; j < data.length; i++, j++) {
      if (data[j] == 0) {
        zero++;
      } else one++;
      if (data[i - 1] == 0) {
        zero--;
      } else one--;
      min = Math.min(min, zero);
    }
    return min;
  }
public int sample_funcname ( int [ ] var_0 ) {
  int var_2 = 0 ;
  int var_3 = 0 ;
  for ( int var_4 = 0 ;
  var_4 < var_0 . length ;
  var_4 ++ ) {
    if ( var_0 [ var_4 ] == 1 ) {
      var_2 ++ ;
    }
    else var_3 ++ ;
  }
  if ( var_2 == 0 ) return 0 ;
  int var_7 = var_2 ;
  var_2 = 0 ;
  var_3 = 0 ;
  int var_4 = 0 , var_8 = var_7 - 1 ;
  for ( int var_9 = var_4 ;
  var_9 <= var_8 ;
  var_9 ++ ) {
    if ( var_0 [ var_9 ] == 1 ) {
      var_2 ++ ;
    }
    else var_3 ++ ;
  }
  var_4 ++ ;
  var_8 ++ ;
  int min = var_3 ;
  for ( ;
  var_8 < var_0 . length ;
  var_4 ++ , var_8 ++ ) {
    if ( var_0 [ var_8 ] == 0 ) {
      var_3 ++ ;
    }
    else var_2 ++ ;
    if ( var_0 [ var_4 - 1 ] == 0 ) {
      var_3 -- ;
    }
    else var_2 -- ;
    min = Math . min ( min , var_3 ) ;
  }
  return min ;
}
