jweinst1
12/3/2016 - 8:13 PM

reverse indexing with an object in javascript.

reverse indexing with an object in javascript.

//reverse indexes strings.

function reverseIndex(string){
  var dict = {};
  for(var i=0;i<string.length;i++){
    if (string[i] in dict){
      dict[string[i]].push(i);
    }
    else {
      dict[string[i]] = [i];
    }
  }
  return dict;
}
/*  reverseIndex("+(5, 6)-(7, 8)")
=> { '5': [ 2 ],
  '6': [ 5 ],
  '7': [ 9 ],
  '8': [ 12 ],
  '+': [ 0 ],
  '(': [ 1, 8 ],
  ',': [ 3, 10 ],
  ' ': [ 4, 11 ],
  ')': [ 6, 13 ],
  '-': [ 7 ] }
   reverseIndex("+(5, -(5, 3))")
=> { '3': [ 10 ],
  '5': [ 2, 7 ],
  '+': [ 0 ],
  '(': [ 1, 6 ],
  ',': [ 3, 8 ],
  ' ': [ 4, 9 ],
  '-': [ 5 ],
  ')': [ 11, 12 ] }*/