Twitter Interview Question
Software Engineer / DevelopersCountry: United States
Interview Type: In-Person
function stringrep ( str ) {
var collection = str.split(' ');
var seen = {};
collection.forEach( function ( item ) {
if ( item in seen ) {
seen[item]++
} else {
seen[item] = 1;
}
});
var resultingCollection = []
for (var key in seen) {
resultingCollection.push(key + ":" + seen[key])
}
return resultingCollection.join(", ")
}
Python:
#!/usr/bin/python
def recurse(list,dic,forbidden):
if (len(list) == 0):
print dic
return
else:
try:
item = int(list.pop())
except :
''' try with hex '''
item = int(list.pop(),16)
if item in forbidden:
recurse(list,dic,forbidden)
return
try:
dic[item] += 1
except KeyError:
dic[item] = 1
recurse(list,dic,forbidden)
if __name__ == "__main__":
forbidden = [9,11]
number = "1 0 1 11 19 19 19 12 9 9 11 0x4 0x4"
result={}
recurse(number.split(),result,forbidden)
public void q1(String str) {
if (str==null || str.length()==0) return;
String[] s = str.split(" ");
int[] l = new int[s.length];
for (int i=0; i<s.length; i++) {
int h = l[Integer.valueOf(s[i])-1];
l[Integer.valueOf(s[i])-1] = (h==0?1:h+1);
}
for (int i=0; i<l.length; i++) {
if (l[i]>0)
System.out.print((i+1)+":"+l[i]+" ");
}
}
- Rampal March 09, 2012