Uber Interview Question

Given a string input, create a function that will output a compressed version of the string. E.g. Input = "AAABBZZDDD", Output = "A3B2Z2D3"

Interview Answers

Anonymous

Mar 8, 2017

- (NSString *)findRunLengthEncoding:(NSString *)givenString { if (givenString.length == 0) //geeksforgeeks //g2e4k2s2f1o1r1 ==> g2e4k2s2f1o1r1 return nil; NSMutableString *returnString = [[NSMutableString alloc] init]; NSMutableDictionary *dictionary = [[NSMutableDictionary alloc] init]; for (int i = 0; i 0) { [returnString appendString:[NSString stringWithFormat:@"%@%@",str, numAppearance]]; } else { if ([numAppearance integerValue] > 0 && [givenString characterAtIndex:i] != [givenString characterAtIndex:i-1]) { [returnString appendString:[NSString stringWithFormat:@"%@%@",str, numAppearance]]; } } [dictionary setObject:@0 forKey:str]; } return [returnString copy]; }

1

Anonymous

Mar 8, 2017

- (NSString *)findRunLengthEncoding:(NSString *)givenString { if (givenString.length == 0) //geeksforgeeks //g2e4k2s2f1o1r1 ==> g2e4k2s2f1o1r1 return nil; NSMutableString *returnString = [[NSMutableString alloc] init]; NSMutableDictionary *dictionary = [[NSMutableDictionary alloc] init]; for (int i = 0; i 0) { [returnString appendString:[NSString stringWithFormat:@"%@%@",str, numAppearance]]; } else { if ([numAppearance integerValue] > 0 && [givenString characterAtIndex:i] != [givenString characterAtIndex:i-1]) { [returnString appendString:[NSString stringWithFormat:@"%@%@",str, numAppearance]]; } } [dictionary setObject:@0 forKey:str]; } return [returnString copy]; }

Anonymous

Apr 1, 2017

// Given a string input, create a function that will output a compressed version of the string. E.g. Input = "AAABBZZDDD", Output = "A3B2Z2D3" var input = 'AAABBZZDDD'; function compress(input) { var map = {}; map[input.charAt(0)] = 1; var result = ''; for(let i=1; i

Anonymous

Sep 22, 2018

input = "AAABBZZDDD" prev = input[0] count = 1 output = [] for i in input[1:]: if i == prev: count += 1 else: output.append(prev) output.append(count) prev = i count = 1 else: output.append(prev) output.append(count) output_string = ''.join(str(e) for e in output) print(output_string)

Anonymous

Jun 26, 2019

public class Uber{ public static void main(String[] args) { Map map=new LinkedHashMap(); String s="AAABBZZDDD"; for(int i=0;i{ System.out.print(k+""+v); }); } }