好难,对于我来说。。。
涉及到。。。:
选择题:
TCP/IP 协议
android/IOS
C++(最多)
数据结构
编程题:
大整数乘法!(之前用Java写过,加减乘除,但是只记得思路!)
从一篇英语文章中,统计重复的单词数目!(有思路,但是不够时间!)
JNI !(我只知道这是android中,Java的远程调用C/C++的。。。)
唉~
迷茫2017-04-17 17:34:20
程式設計題第二題的思路(PHP版本):
function repeatArray($str){
preg_match_all('/\w/',$str,$array);
$uniqueArray = array_unique($array);
$repeat = array_diff_assoc($array,$uniqueArray);
return count($repeat);
}
沒有實驗過,歡迎指點
感覺鵝廠的題偏向於考試,比較注重基礎,思維能力
天蓬老师2017-04-17 17:34:20
程式設計題:
1 大數乘法,leetcode的原題,去這裡看高票答案是怎麼寫的
2 統計重複單字的數目。
兩種想法:1)用哈希表統計出現單字的次數,c++11有stl有模板unordered_map可用,時間複雜度O(n), n是單字個數,實際上如果考慮到對每個單字求hash值時還要遍歷每個單詞,如果單字的平均長度是m的話,建表時間複雜度是O(m*n)。找出時間複雜度是O(1)。
2)開trie樹,遍歷所有單詞,插入到樹中,建樹時間複雜度依然是O(m*n), 考慮到用哈希表存在檢測衝突和二次探測的情況,trie樹建樹應該會稍快。但查找略慢,時間複雜度為O(len),len是被查找單字的長度