@Override
    public IComplexNDArray createComplex(double[] data, int[] shape) {
    """
	Create an ndrray with the specified shape
	
	@param data  the data to use with tne ndarray
	@param shape the shape of the ndarray
	@return the created ndarray
    """
        //ensure shapes that wind up being scalar end up with the write shape
        if (shape.length == 1 && shape[0] == 0) {
            shape = new int[] {1, 1};
        }
        return createComplex(data, shape, Nd4j.getComplexStrides(shape), 0);
    }
@Override
    public IComplexNDArray createComplex(double[] data, int[] shape) {
        //ensure shapes that wind up being scalar end up with the write shape
        if (shape.length == 1 && shape[0] == 0) {
            shape = new int[] {1, 1};
        }
        return createComplex(data, shape, Nd4j.getComplexStrides(shape), 0);
    }
@ Override public IComplexNDArray createComplex ( double [ ] data , int [ ] shape ) { //ensure shapes that wind up being scalar end up with the write shape if ( shape . length == 1 && shape [ 0 ] == 0 ) { shape = new int [ ] { 1 , 1 } ; } return createComplex ( data , shape , Nd4j . getComplexStrides ( shape ) , 0 ) ; }
Create an ndrray with the specified shape

@param data  the data to use with tne ndarray
@param shape the shape of the ndarray
@return the created ndarray
Create an ndrray with the specified shape