算法:
1、把 "www.zhidao.baidu.com" 這樣的字符串改成 "com/baidu/zhidao/www"?!项}目了,劍指 offer 的,兩次逆序排列即可。
2、求數(shù)組中和為某個值的所有子數(shù)組,比如數(shù)組是 [5,5,10,2,3] 一共有四個子數(shù)組的和是 15,比如 [5,10],[5,10],[10,2,3],[5,5,2,3]。這個就是簡單的遞歸了,分兩種情況,當前位置的數(shù)字在子數(shù)組中,以及不在子數(shù)組中。
3、下面這段代碼的輸出結(jié)果是:
int main() {
int a[5]={1,2,3,4,5};
int *ptr=(int *)(&a+1);
printf(“%d,%d”,*(a+1),*(ptr-1));
}
答案是 2 和 5。a 是指向數(shù)組開頭元素的指針,a + 1 就是指向下一個元素的指針,所以星號求值以后是 2。&a 相當于是數(shù)組的指針,&a + 1 是數(shù)組后面一個數(shù)組的指針,然后轉(zhuǎn)換成int *類型是 5 這個數(shù)字后面的一個數(shù)字的指針。再減一就是指向 5 的指針,所以星號求值以后是 5。
4、某個地方天氣有如下規(guī)律:如果第一天和第二天都不下雨,則第三天下雨的概率為30%;如果第一天和第二天中有任 意一天下雨,則第三天下雨的概率為60%。問如果周一周二都沒下雨,那么周四下雨的概率為___。 簡單的概率題,答案是:30% * 60% + 70% * 30% = 39%
5、某癡迷撲克的小團體喜歡用23456789TJQKA來計數(shù),A后面是22,23,...,2A,32,...,AA,222,... 依次類推。
請用C/C++或Java寫個程序,將用字符串表示這種計數(shù)法轉(zhuǎn)換成字符串表示的10進制整數(shù)。其中,該計數(shù)法的2就對應于十進制的2,之后依次遞增。C/C++函數(shù)接口: char* pokToDec(char *) 我的解決思路是進制轉(zhuǎn)換,類似于 16 進制轉(zhuǎn)換 10 進制這種,最后再把數(shù)字轉(zhuǎn)成 char * 類型。
iOS相關(guān):
1、介紹 block?!姨岬綏I系?block 在 ARC 下會自動復制到堆上,面試官問我從 iOS 4 還是 5 開始支持這一特性,表示不知道,我又不是學 OC 歷史的,后來想想可能是公司內(nèi)部老項目有這個坑。
2、ARC 會對代碼做什么優(yōu)化?——比如 NSString *s2 = s1; s2 = nil 這樣的語句,可能就不會有 retain 和 release 方法了。
3、介紹一下 MVVM 和 RAC?!赡苁俏液啔v的某個角落寫了用過 RAC,被挖出來了,大概談了一下,結(jié)果面試官問我數(shù)據(jù)的雙向綁定怎么做,bind 函數(shù)了解過么?
4、介紹自己用過哪些開源庫?!狹asonry 和 SnapKit,AFNetWorking,MKNetworkKit,Alamofire,Mantle,SDWebImage
5、如果讓你寫,你能實現(xiàn)么?
6、讀過某個庫的源碼么?runloop 來保證滑動是加載數(shù)據(jù)的流暢性?
7、SDWebImage 下載了圖片后為什么要解碼?