Leetcode Mini Parser problem solution

In this Leetcode Mini Parser problem solution, you have given a string s represents the serialization of a nested list, implement a parser to deserialize it and return the deserialized NestedInteger. Each element is either an integer or a list whose elements may also be integers or other lists.

Problem solution in Python.

```import ast

class Solution:
def deserialize(self, s: str) -> NestedInteger:
data = ast.literal_eval(s)
def nesty(x):
if isinstance(x, int):
return NestedInteger(x)
n = NestedInteger()
for sub in x:
return n
return nesty(data)
```

Problem solution in Java.

```public class Solution {
private int i;
public NestedInteger deserialize(String s) {
return dfs(s);
}

private NestedInteger dfs(String s) {
boolean negative = false;
if (s.charAt(i) == '[') {
NestedInteger r = new NestedInteger();
i++;
while (s.charAt(i) != ']') {
if (s.charAt(i) == ',') {
i++;
} else {
}
}
i++;
return r;
} else {
if (s.charAt(i) == '-') {
negative = true;
i++;
}
int num = 0;
while (i < s.length() && Character.isDigit(s.charAt(i))) {
num *= 10;
num += s.charAt(i) - '0';
i++;
}
NestedInteger r = new NestedInteger();
r.setInteger(negative ? -num : num);
return r;
}
}
}
```

Problem solution in C++.

```class Solution {
public:
typedef NestedInteger ni;
NestedInteger deserialize(string s) {
//stack<char>s;
if(s[0]!='['){
ni a(stoi(s));
return a;
}
stack<ni>st;
string temp = "";
for(int i = 0;i<s.size();i++){
if(s[i]=='['){
ni a;
st.push(a);
temp = "";

}
else if(s[i]==','){
if(temp!=""){
ni &par = st.top();
}
temp = "";
}
else if(s[i]==']'){
ni par = st.top();
st.pop();
if(temp!=""){
temp = "";
}
if(st.size()==0){
st.push(par);
break;
}
ni &grandpar = st.top();
}
else{
temp+=s[i];
}
}
return st.top();
}
};
```