Easily understandable solution


#1

vector Solution::prettyJSON(string A)
{
vectorans;
int n=A.length();
int i=0;
int space=0;
while(i<n)
{
if(A[i]==’[’||A[i]==’{’)
{
int j=0;
string temp="";
while(j<space)
{

            temp=temp+"\t";
            j++;
        }
        if(A[i]=='[')
        {
            temp=temp+'[';
        }
        if(A[i]=='{')
        {
            temp=temp+'{';
        }
        ans.push_back(temp);
        space++;
        i++;
    }
    else if(A[i]==']'||A[i]=='}')
    {
        int j=0;
        space--;
        string temp="";
        while(j<space)
        {
            j++;
            temp=temp+"\t";
        }
         if(A[i]==']')
        {
            temp=temp+']';
        }
        if(A[i]=='}')
        {
            temp=temp+'}';
        }
        if(A[i+1]==','&&i<n)
        {
            temp=temp+A[i+1];
            i++;
        }
        ans.push_back(temp);
        i++;
    }
    else
    {
        string temp="";
         int j=0;
        while(j<space)
        {
            j++;
            temp=temp+"\t";
        }
        
          while(A[i]!=','&&A[i]!='['&&A[i]!='{'&&A[i]!=']'&&A[i]!='}')
           {
            temp=temp+A[i];
            i++;
            }
           if(A[i]==',')
           {
             temp=temp+A[i];
             ans.push_back(temp);
             i++;
           }
           else
           {
               ans.push_back(temp);
           }
    }
    
}
return ans;

}