Java Solution || using recursion || 1ms runtime || easy to understand
\nclass Solution {\n    public int minMaxGame(int[] arr) {\n        if (arr.length == 1) {\n            return arr[0];\n        }\n        int[] ans = new int[a
```\nclass Solution {\n    public int minMaxGame(int[] arr) {\n        if (arr.length == 1) {\n            return arr[0];\n        }\n        int[] ans = new int[arr.length / 2];\n        int ind = 0, cnt = 0;\n        for (int i = 0; i < arr.length - 1; i += 2, cnt++) {\n            int val = 0;\n            if (cnt % 2 == 0) {\n                val = Integer.min(arr[i], arr[i+1]);\n            }\n            else val = Integer.max(arr[i], arr[i+1]);\n            ans[ind++] = val;\n        }\n        return minMaxGame(ans);\n    }\n}\n```
['Recursion', 'Java']