跟谁学面试经历

最近参加A轮创业公司跟谁学的面试,比较惨痛,直接没见到面试官。
上来手写两道算法题(很简单):
1.整型逆序输出
面试官限定条件:1.不用字符串;2.不确定数据长度 ;
//整型逆序输出

  • (NSInteger)reverseInteger:(NSInteger)integer {
    NSMutableArray * array = [NSMutableArray arrayWithCapacity:0];
    NSInteger temp = integer;
    while (temp) {
    NSInteger value = temp%10;
    [array addObject:[NSNumber numberWithInteger:value]];
    temp = temp/10;
    }
    NSInteger resultValue = 0;
    for (NSInteger i = 0;i < array.count;i++) {
    resultValue += [array[i] integerValue] * [self getValue:array.count-i-1];
    }
    return resultValue;
    }
  • (NSInteger)getValue:(NSInteger)index {
    NSInteger reslut = 1;
    while (index) {
    reslut *= 10;
    index--;
    }
    return reslut;
    }
    2.字符串匹配算法
    这里给出了最简单直接算法,可以根据BM,KMP等算法优化步长,这里直接步长设定为1,考虑重复。
  • (NSMutableArray)compareArray:(NSMutableArray)arrayA withArray:(NSMutableArray*)arrayB {
    NSMutableArray * array = [NSMutableArray arrayWithCapacity:0];
    NSInteger j = 0; //相等次数
    for (NSInteger i = 0;i < arrayA.count - arrayB.count; i++) {
    j = 0;
    for (NSInteger k = 0;k < arrayB.count;k++) {
    if (arrayA[k+i] == arrayB[k]) {
    j++;
    }
    else {
    break;
    }
    }
    if (j == arrayB.count) {
    [array addObject:[NSNumber numberWithInteger:i]];
    }
    }
    return array;
    }
    总结:
    1.临场手写算法还是比较紧张(需要多练习);
    2.画图推演是写出算法的绝招;
    3.如果给我电脑写就好了;
    4.面试官是女的容易分心(轻敌);
    5.有思路,但写不出来;

你可能感兴趣的:(跟谁学面试经历)