[JAVA] Fast and also memory efficient
\n int column = encodedText.length() / rows;\n        char[][] array = new char[rows][column];\n\n        int counter = 0;\n        for (int i = 0; i < rows; i+
```\n int column = encodedText.length() / rows;\n        char[][] array = new char[rows][column];\n\n        int counter = 0;\n        for (int i = 0; i < rows; i++) {\n            for (int j = 0; j < column; j++) {\n                array[i][j] = encodedText.charAt(counter);\n                counter++;\n            }\n        }\n\n        StringBuilder builder = new StringBuilder();\n\n        for (int i = 0; i < column; i++) {\n            int cnt = i;\n            for (int j = 0; j < rows; j++) {\n                if (cnt < column)\n                    builder.append(array[j][cnt++]);\n            }\n        }\n\n        String result = builder.toString();\n\n        return result.stripTrailing();\n```
['Java']