1. [Google], map serverÓû§Ì«¶à£¬ÈçºÎ×öÀ´Ìá¸ßϵͳµÄÐÔÄÜ£¿
1. ajax,¿ÉÒÔ²»ÓÃÓû§Ã¿´Î¶¼downloadÕû¸ömap,ËûÃÇÒѾʹÓÃ
2. ʹÓÃmiddleware,À´Î¬»¤Êý¾Ý¿âÁ´½Ó,²¢ÇÒ×öload balanceµÈµÈ
3. ʹÓÃdistributed system,À´Ê¹²»Í¬µÄÓû§Ê¹Óò»Í¬µÄserver.
ºóÀ´¾ÓÈ»ÎÊÔõôÀ´devide,»Ø´ð˵¸ù¾Ý²»Í¬µÄipÀ´Çø±ð²»Í¬µÄÎïÀíµØÖ·,
¾ÓÈ»ÓÖ×·ÎÊ,»¹ÓÐûÓÐÆäËû·½·¨,»Ø´ð˵½âÎöËûÃǵÄhttprequest,
¿´¿´ËùÔڵIJ»Í¬µÄʱÇø,²»Í¬µÄÓïÑÔ,¹ú¼ÒʲôµÄ,blabla
4. Ôö¼ÓserverµÄmemory,Ìá¸ßcpuÐÔÄÜ,µÈÓ²¼þ·½Ãæ.
5. Ìá¸ßÊý¾Ý¿âÐÔÄÜ,¸øÊý¾Ý¿â×öpartition,blabla¡
×îÖØÒªµÄÊÇÒªÏÈÕÒ³öÐÔÄÜÆ¿¾±ÔÚÄÄÀï
2. how to make copy big file to many machines faster
3. д´úÂëµÄʱºò£¬ÍùÍù»á¸øarray¶¨Ò»¸ömax_number, Èç¹ûÏÖʵÖÐÓпÉÄܳöÏÖ¸ßÓÚÕâ¸öÊý×Ö£¬Ôõô²âÊÔ£¿±ÈÈçÕÒ³öÁÚ½üµÄwifiÍøÂçÊý£¬max_numberÔÙÔõô´ó£¬×ÜÓпÉÄܳ¬³ö£¬Ôõô²âÊÔÄØ£¿¶øÇÒ±ÈÈçÕâÖÖÇé¿ö»¹ºÜÄÑÄ£Äâ(ºÜÄÑÔÚÏÖ³¡É輸°Ù¸öÍøÂç°É)£¬Ôõô²âÊÔ£¿²»×¼Óö¯Ì¬Êý×é¡£
4. ¶ÔÓÚcommon senseµÄÎÊÌ⣬ҪÓÐËù×¼±¸£¬±ÈÈçΪʲôҪÀ´FB£¿ÎªÊ²Ã´À뿪ÉÏÒ»¼Ò¹«Ë¾£¿ÄãÓÐʲô¸Ä½øFB²úÆ·µÄ½¨Ò飿µÈµÈ¡£
5. һ̨·þÎñÆ÷ÿ¹ýÈýÌì¾ÍÒª¹ÒÒ»´Î£¬ÐèÒªÖØÆô²ÅÄÜÔÙ´ÎʹÓã¬Ã¿´ÎÖØÆôÐèÒªÒ»·ÖÖÓµÄʱ¼ä£»ÎÊÓÐʲô·½·¨Äܽâ¾öÕâ¸öÎÊÌâ¡£
һЩÓÐÓõÄÍøÉÏ×ÊÔ´
http://www.csse.monash.edu.au/~lloyd/tildeAlgDS/Sort/
http://www.4shared.com/document/qzFCPK8f/101_Dynamite_Answers_t
http://www.4shared.com/document/SmfrgYjD/Career_-_201_Best_Ques
http://www.4shared.com/document/Eqg6xcuH/Knockout_answers_to_to
http://courses.csail.mit.edu/iap/interview/materials.php
ÍƼö¡°A Collection of Dice Problems¡±,ÃæÊÔfacebookʱÓöµ½²»ÉÙ¸ÅÂÊÌ⣬¶¼²»³¬³öÕâƪÎÄÕµÄ˼·ºÍÄѶȡ£
http://www.ibm.com/developerworks/aix/tutorials/au-memorymanage
Lock-free algorithms¡£ÍƼö
http://www.ibm.com/developerworks/java/library/j-jtp04186/index
ÅÅÐòºÍbinary searchËã·¨Ì⣬ÍƼöhttp://www.cs.princeton.edu/introcs/42sort
http://www.cl.cam.ac.uk/~cwc22/hashtable/
C++Àï´´½¨¶þάÊý×飬http://www.codeproject.com/KB/cpp/arrayDinamic.aspx
¹ØÓÚDP http://people.csail.mit.edu/bdean/6.046/dp/
http://www.algolist.net/
http://cslibrary.stanford.edu/
http://www.cs.bell-labs.com/cm/cs/pearls/
http://www.cs.berkeley.edu/~vazirani/algorithms.html
<±à³ÌÖ®ÃÀ>
<³ÌÐòÔ±ÃæÊÔ±¦µä>
<ºÎº£ÌÎÃæÊÔÌ⾫ѡ>
Algorithm to learn:
Facebook system design question from glassdoor
Design the Facebook Credit system which is a application where users can buy/trade virtual currency and can use the virtual currency to purchase Facebook services, like paid apps.
Design a system to detect typos and provide suggestions to users.
¿¼ÂÇÓû§µÄÀúÊ·Êý¾Ý
http://norvig.com/spell-correct.html
How will you design TinyUrl
How will you design facebook newsfeed. Focus was on a design which could handle the huge number of status updates and display them on each of the user¡¯s friend¡¯s wall.
Facebook system design question from careercup
Question: Design a component that implements the following functionality..
1) Record an Event (For the sake of simplicity, treat the Event as an integer code)
2) Return the number of Events recorded in the last one minute.
3) Return the number of Events recorded in the last one hour.
i.e implement the following interface
- Design the interface first
- Give the implementation detail.
<<>>
Open ended question:
What if there isn¡¯t enough storage available to store each individual event
4
Say you need to design a web application which needs to support friends of
friends function(like in linked in, when you search a person, it will show
you if this person is linked with you, your connection or your connections¡¯
conection¡), we expect to have millions of users and each user may have
thousands of friends, how would you design/implement this function to make
it scalable.
Design Farmville,
Consider only crops and animals for now.
Whats classes will you have
How will you handle interactions between various objects
What design patterns can you use
How will you handle millions of users
How will you design the backend for faceboo