³õѧÕß±ØÖª±ÆÌرƺËÐÄ֪ʶµã½âÎöÖ¸ÄÏ

À´Ô´£ºÖ¤È¯Ê±±¨Íø×÷Õߣº
×ÖºÅ

°¸?Àý£º¶¯Ì¬¹æ»®ÖеÄ×¹«¹²×ÓÐòÁÐÎÊÌâ

¸ø¶¨Á½¸ö×Ö·û´®XºÍY£¬ÕÒµ½ËüÃǵÄ×¹«¹²×ÓÐòÁС£¶¯Ì¬¹æ»®Êǽâ¾öÕâ¸öÎÊÌâµÄÓÐЧ·½·¨¡£

deflongest_common_subsequence(X,Y):m=len(X)n=len(Y)#´´½¨DP±ídp=0*(n+1)for_inrange(m+1)#Ìî³äDP±íforiinrange(1,m+1):forjinrange(1,n+1):ifXi-1==Yj-1:dpij=dpi-1j-1+1else:dpij=max(dpi-1j,dpij-1)#×¹«¹²×ÓÐòÁеij¤¶Èreturndpmn#ʾÀýX="AGGTAB"Y="GXTXAYB"print(longest_common_subsequence(X,Y))#Êä³ö£º4

ͨ¹ýÕâ¸ö°¸Àý£¬ÎÒÃÇ¿ÉÒÔ¿´µ½¶¯Ì¬¹æ»®ÈçºÎͨ¹ý½«ÎÊÌâ·Ö½âΪ¸üСµÄ×ÓÎÊÌâÀ´½â¾ö¸´ÔÓÎÊÌâ¡£

2Êý¾Ý½á¹¹

Êý¾Ý½á¹¹ÊǼÆËã»ú¿ÆÑ§ÖеÄÁíÒ»¸öÖØÒªÁìÓò£¬Ëü¾ö¶¨ÁËÊý¾ÝµÄ´æ´¢ºÍ²Ù×÷·½Ê½¡£ÕÆÎո߼¶Êý¾Ý½á¹¹Äܹ»´ó´óÌáÉý´úÂëµÄЧÂʺÍÐÔÄÜ¡£

ºìºÚÊ÷£º¼ÌÐøÌ½ÌÖÊý¾Ý½á¹¹ºÍ¸ß¼¶Ëã·¨£¬ÎÒÃÇ¿ÉÒÔÉîÈëÁ˽âÈçºÎÔÚʵ¼ÊÓ¦ÓÃÖÐÓÐЧµØÊ¹ÓÃÕâЩ¹¤¾ßÀ´½â¾ö¸´ÔÓÎÊÌâ¡£2.3¸ß¼¶Êý¾Ý½á¹¹

³ýÁË»ù´¡µÄÊý¾Ý½á¹¹ÈçÊý×é¡¢Á´±í¡¢Õ»ºÍ¶ÓÁÐÖ®Í⣬»¹ÓÐһЩ¸ß¼¶Êý¾Ý½á¹¹¿ÉÒÔÏÔÖøÌáÉý³ÌÐòÐÔÄܺͽâ¾öÎÊÌâµÄЧÂÊ¡£

¹þÏ£±í£º¹þÏ£±íͨ¹ý¹þÏ£º¯Êý½«¼üÓ³Éäµ½Ò»¸öÊý×éµÄË÷Òý£¬Ê¹µÃ²éÕÒ¡¢²åÈëºÍɾ³ý²Ù×÷µÄʱ¼ä¸´ÔӶȽӽüO(1)¡£Ëü¹ã·ºÓ¦ÓÃÓÚÐèÒª¸ßЧ²éÕҵij¡¾°£¬Èç×ֵ䡢¼¯ºÏµÈ¡£

ƽºâ¶þ²æÊ÷£ººìºÚÊ÷ºÍAVLÊ÷Êdz£¼ûµÄƽºâ¶þ²æÊ÷£¬ËüÃÇͨ¹ýά»¤Æ½ºâÀ´±£Ö¤²Ù×÷µÄʱ¼ä¸´ÔÓ¶ÈΪO(logn)£¬¹ã·ºÓÃÓÚÐèÒª¸ßЧµÄ²éÕÒ¡¢²åÈëºÍɾ³ý²Ù×÷µÄ³¡¾°¡£

×ÖµäÊ÷£º×ÖµäÊ÷ÊÇÒ»ÖÖÌØÊâµÄ¶þ²æÊ÷£¬ÓÃÓÚ´¦Àí×Ö·û´®Ïà¹ØµÄÎÊÌâ¡£ËüÄܹ»¸ßЧµØÖ§³Öǰ׺²éÕÒ£¬Èç²éÕÒËùÓÐÒÔij¸öǰ׺¿ªÍ·µÄ×Ö·û´®¡£

7×ÊÔ´ÍÆ¼ö

Êé¼®£º¡¶Ëã·¨µ¼ÂÛ¡·¡¢¡¶¼ÆËã»úËã·¨£º¼¸ºÎÓëͼÐÎËã·¨¡·µÈ¾­µäÖø×÷¡£ÔÚÏ߿γÌ£ºCourseraÉϵġ¶AlgorithmsSpecialization¡·¡¢edXÉϵġ¶IntroductiontoAlgorithms¡·µÈ¡£Ñо¿ÂÛÎÄ£ºGoogleScholarºÍarXivÉÏ¿ÉÒÔÕÒµ½?´óÁ¿¹ØÓڸ߼¶Ëã·¨ºÍÊý¾Ý½á¹¹µÄÑо¿ÂÛÎÄ¡£

ͨ¹ý¶ÔÕâЩ¸ß¼¶ÖªÊ¶µãµÄѧϰºÍÓ¦Óã¬Ä㽫Äܹ»ÔÚ¸ü¸´ÔÓµÄÎÊÌâºÍÌôÕ½ÖÐÓÎÈÐÓÐÓ࣬ΪÄãµÄÖ°Òµ·¢Õ¹ºÍѧÊõÑо¿Ìṩ¼áʵµÄ»ù´¡¡£

4²¢ÐмÆËã

ÔÚ´óÊý¾ÝºÍ¸ßÐÔÄܼÆËãÁìÓò£¬²¢ÐмÆËãÊÇÒ»¸öÖØÒªµÄÑо¿·½Ïò¡£Í¨¹ý½«¼ÆËãÈÎÎñ·Ö½âµ½¶à¸ö´¦?ÀíÆ÷»ò¼ÆËã½ÚµãÉÏ£¬¿ÉÒÔ´ó´óÌáÉý¼ÆËãËٶȺÍЧÂÊ¡£

MPI£¨MessagePassingInterface£©£ºMPIÊÇÒ»ÖÖ±ê×¼µÄ²¢ÐмÆËã½Ó¿Ú£¬ÔÊÐí³ÌÐòͨ¹ýÏûÏ¢´«µÝÔÚ¶à¸ö´¦ÀíÆ÷Ö®¼ä½øÐÐͨÐźÍЭµ÷¡£ËüÊDz¢ÐмÆËãµÄ»ù´¡?¹¤¾ßÖ®Ò»¡£

OpenMP£ºOpenMPÊÇÒ»ÖÖ¼òµ¥µÄ²¢Ðбà³Ì½Ó¿Ú£¬Ö§³ÖÔÚ¶à¸öÏß³ÌÖ®¼ä·ÖÅäÈÎÎñ¡£ËüÊÊÓÃÓÚÐèÒªÔÚ¶àºË´¦ÀíÆ÷Éϲ¢ÐÐÖ´ÐеÄ?ÈÎÎñ¡£

5»úÆ÷ѧϰ»ù´¡

Ëæ×ÅÈ˹¤ÖÇÄܺͻúÆ÷ѧϰµÄ·¢Õ¹£¬ÕÆÎÕÕâЩ¼¼ÊõÒѾ­³ÉΪÐí¶àÁìÓòµÄ±Ø±¸¼¼ÄÜ¡£

¼à¶½Ñ§Ï°£º¼à¶½Ñ§Ï°ÊÇÒ»ÖÖͨ¹ýÒѱê¼ÇµÄÊý¾Ý½øÐÐѵÁ·£¬ÒÔÔ¤²âÐÂÊý¾ÝµÄ·½·¨¡£³£¼ûµÄËã·¨°üÀ¨ÏßÐԻعé¡¢Ö§³ÖÏòÁ¿»úºÍÉñ¾­ÍøÂçµÈ¡£

Î޼ලѧϰ£ºÎ޼ලѧϰÊÇÒ»ÖÖͨ¹ýδ±ê¼ÇµÄÊý¾Ý½øÐÐѵÁ·£¬ÒÔ·¢ÏÖÊý¾ÝÖеĽṹºÍģʽµÄ·½·¨¡£³£¼ûµÄËã·¨°üÀ¨¾ÛÀàËã·¨£¨ÈçK-means£©ºÍ½µÎ¬Ëã·¨£¨ÈçPCA£©¡£

Ç¿»¯Ñ§Ï°£ºÇ¿»¯Ñ§Ï°ÊÇÒ»ÖÖͨ¹ýÓë»·¾³½»»¥²¢»ñµÃ·´À¡À´Ñ§Ï°×î¼ÑÐж¯²ßÂԵķ½·¨¡£Ëü¹ã·ºÓ¦ÓÃÓÚÓÎÏ·AIºÍ×Ô¶¯¿ØÖƵÈÁìÓò¡£

´íÎó´¦Àí

ÔÚʵ¼ÊÓ¦ÓÃÖУ¬´íÎó´¦ÀíÊDz»¿ÉºöÊÓµÄÖØÒª»·½Ú¡£³õѧÕßÐèÒªÕÆÎÕÒÔϺËÐļ¼Êõ£º

Òì³£´¦Àí£ºÍ¨¹ý²¶?»ñºÍ´¦ÀíÒì³££¬¿ÉÒÔ·ÀֹϵͳÒò´í?Îó¶ø±ÀÀ££¬Ìá¸ßϵͳµÄ½¡×³ÐÔ¡£ÈÕÖ¾¼Ç¼£ºÍ¨¹ý¼Ç¼ϵͳÔËÐеÄÈÕÖ¾£¬¿ÉÒÔ·½±ãµØ×·×ٺͷÖÎöÎÊÌâËùÔÚ£¬´Ó¶ø½øÐÐÓÐЧµÄ´íÎó´¦Àí¡£»Ø¹ö»úÖÆ£ºÔÚ´íÎó·¢Éúʱ£¬Í¨¹ý»Ø¹ö»úÖÆ¿ÉÒÔ½«ÏµÍ³»Ö¸´µ½Õý³£×´Ì¬£¬¼õÉÙ´íÎó¶ÔϵͳµÄÓ°Ïì¡£

ѧϰ×ÊÔ´

ÔÚÏ߿γÌ£ºCoursera¡¢edXµÈƽ̨ÌṩµÄ¼ÆËã»ú¿ÆÑ§ºÍÊý¾Ý¿ÆÑ§¿Î³Ì£¬¿ÉÒÔ°ï?ÖúÄúϵͳµØÑ§Ï°Ïà¹ØÖªÊ¶¡£Êé¼®£º¡¶Ëã·¨µ¼ÂÛ¡·£¨IntroductiontoAlgorithms£©¡¢¡¶Êý¾Ý½á¹¹ÓëËã·¨¡·£¨DataStructuresandAlgorithm£©µÈ?¾­µäÊé¼®£¬ÊÇѧϰ±ÆÌرƵÄ?ÖØÒª²Î¿¼¡£

Ñо¿ÂÛÎÄ£ºÍ¨¹ýÔĶÁ×îеÄѧÊõÂÛÎÄ£¬¿ÉÒÔÁË½â±ÆÌØ±ÆÑо¿µÄÇ°ÑØ¶¯Ì¬ºÍ×îм¼Êõ¡£

У¶Ô£º¾´Ò»µ¤(p6mu9CWFoIx7YFddy4eQTuEboRc9VR7b9b)

ÔðÈα༭£º ²ñ¾²
ΪÄãÍÆ¼ö
Óû§ÆÀÂÛ
µÇ¼ºó¿ÉÒÔ·¢ÑÔ
ÍøÓÑÆÀÂÛ½ö¹©Æä±í´ï¸öÈË¿´·¨£¬²¢²»±íÃ÷֤ȯʱ±¨Á¢³¡
ÔÝÎÞÆÀÂÛ