¹é²¢ÅÅÐòËã·¨ C´úÂëʵÏÖ
ºÏ²¢ÅÅÐò£¨MERGE SORT£©ÊÇÓÖÒ»À಻ͬµÄÅÅÐò·½·¨£¬ºÏ²¢µÄº¬Òå¾ÍÊǽ«Á½¸ö»òÁ½¸öÒÔÉϵÄÓÐÐòÊý¾ÝÐòÁкϲ¢³ÉÒ»¸öеÄÓÐÐòÊý¾ÝÐòÁУ¬Òò´ËËüÓֽй鲢Ëã·¨¡£ËüµÄ»ù±¾Ë¼Ïë¾ÍÊǼÙÉèÊý×éAÓÐN¸öÔªËØ£¬ÄÇô¿ÉÒÔ¿´³ÉÊý×éAÊÇÓÖN¸öÓÐÐòµÄ×ÓÐòÁÐ×é³É£¬Ã¿¸ö×ÓÐòÁеij¤¶ÈΪ1£¬È»ºóÔÙÁ½Á½ºÏ²¢£¬µÃµ½ÁËÒ»¸ö N/2 ¸ö³¤¶ÈΪ2»ò1µÄÓÐÐò×ÓÐòÁУ¬ÔÙÁ½Á½ºÏ²¢£¬Èç´ËÖظ´£¬ÖµµÃµÃµ½Ò»¸ö³¤¶ÈΪNµÄÓÐÐòÊý¾ÝÐòÁÐΪֹ£¬ÕâÖÖÅÅÐò·½·¨³ÆΪ2—·ºÏ²¢ÅÅÐò¡£
¡¡¡¡ÀýÈçÊý×éAÓÐ7¸öÊý¾Ý£¬·Ö±ðÊÇ£º 49 38 65 97 76 13 27£¬ÄÇô²ÉÓù鲢ÅÅÐòËã·¨µÄ²Ù×÷¹ý³ÌÈçͼ7Ëùʾ£º
¡¡¡¡³õʼֵ [49] [38] [65] [97] [76] [13] [27]
¡¡¡¡¿´³ÉÓɳ¤¶ÈΪ1µÄ7¸ö×ÓÐòÁÐ×é³É
¡¡¡¡µÚÒ»´ÎºÏ²¢Ö®ºó [38 49] [65 97] [13 76] [27]
¡¡¡¡¿´³ÉÓɳ¤¶ÈΪ1»ò2µÄ4¸ö×ÓÐòÁÐ×é³É
¡¡¡¡µÚ¶þ´ÎºÏ²¢Ö®ºó [38 49 65 97] [13 27 76]
¡¡¡¡¿´³ÉÓɳ¤¶ÈΪ4»ò3µÄ2¸ö×ÓÐòÁÐ×é³É
¡¡¡¡µÚÈý´ÎºÏ²¢Ö®ºó [13 27 38 49 65 76 97]
¡¡¡¡ºÏ²¢Ëã·¨µÄºËÐIJÙ×÷¾ÍÊǽ«Ò»Î¬Êý×éÖÐÇ°ºóÏàÁÚµÄÁ½¸öÁ½¸öÓÐÐòÐòÁкϲ¢³ÉÒ»¸öÓÐÐòÐòÁС£ºÏ²¢Ëã·¨Ò²¿ÉÒÔ²ÉÓõݹéËã·¨À´ÊµÏÖ£¬ÐÎʽÉϽÏΪ¼òµ¥,µ«ÊµÓÃÐԺܲºÏ²¢Ëã·¨µÄºÏ²¢´ÎÊýÊÇÒ»¸ö·Ç³£ÖØÒªµÄÁ¿,¸ù¾Ý¼ÆËãµ±Êý×éÖÐÓÐ3µ½4¸öÔªËØʱ,ºÏ²¢´ÎÊýÊÇ2´Î,µ±ÓÐ5µ½8¸öÔªËØʱ,ºÏ²¢´ÎÊýÊÇ3´Î,µ±ÓÐ9µ½16¸öÔªËØʱ,ºÏ²¢´ÎÊýÊÇ4´Î£¬°´ÕÕÕâÒ»¹æÂÉ,µ±ÓÐN¸ö×ÓÐòÁÐʱ¿ÉÒÔÍƶϳöºÏ²¢µÄ´ÎÊýÊÇX(2 >=N,·ûºÏ´ËÌõ¼þµÄ×îСÄǸöX)¡£
¡¡¡¡Æäʱ¼ä¸´ÔÓ¶ÈΪ£ºO(nlogn).ËùÐ踨Öú´æ´¢¿Õ¼äΪ£ºO(n)
¡¡¡¡¹é²¢Ëã·¨ÈçÏ£º
#include<stdio.h>
#include<stdlib.h>
typedef int RecType;//ÒªÅÅÐòÔªËØÀàÐÍ
void Merge(RecType *R,int low,int m,int high)
{
//½«Á½¸öÓÐÐòµÄ×ÓÎļþR[low..m)ºÍR[m+1..high]¹é²¢³ÉÒ»¸öÓÐÐòµÄ×ÓÎļþR[low..high]
int i=low,j=m+1,p=0; //Öóõʼֵ
RecType *R1; //R1ÊǾֲ¿ÏòÁ¿
R1=(RecType *)malloc((high-low+1)*sizeof(RecType));
if(!R1)
{
return; //ÉêÇë¿Õ¼äʧ°Ü
}
while(i<=m&&j<=high) //Á½×ÓÎļþ·Ç¿ÕʱȡÆäСÕßÊä³öµ½R1[p]ÉÏ
{
R1[p++]=(R[i]<=R[j])?R[i++]:R[j++];
}
while(i<=m) //ÈôµÚ1¸ö×ÓÎļþ·Ç¿Õ£¬Ôò¸´ÖÆÊ£Óà¼Ç¼µ½R1ÖÐ
{
R1[p++]=R[i++
Ïà¹ØÎĵµ£º
ϵͳ»·¾³£ºUbuntu 9.04
Èí¼þ»·¾³£ºNetBeans 6.7.1 C/C++ ¡¢JDK1.6.0_16
±¾´ÎÄ¿µÄ£ºÍê³ÉNetBeans 6.7.1 C/C++ µÄÅäÖù¤×÷¡¢±àÒë²âÊÔ¼°¶ÔÖÐÎÄÖ§³Ö
Ê×ÏÈ´Ó¹ÙÍøÉÏÏÂÔØ×îаæµÄNetbeans Ñ¡ÔñC/C++¹¤×÷̨ÏÂÔØ[µã»÷½øÈë]£¬µ¯³öµÄÐÂÍøÒ³½«»á×Ô¶¯ÏÂÔØ£¬ÈçÏÂͼ£º
ÔÚ½øÐа²×°Ö®Ç°£¬ÎÒÃÇÏÈ°²×°JDK£¬ ......
˵Ã÷£º³ÌÐòʹÓÃÁËOpenGL£¬Òò´ËÓÃVS±àÒëʱ£¬¾ÍÒª´î½¨Ê¹ÓÃOpenGLµÄ»·¾³¡£¾ßÌå·½·¨ÈçÏ£¬
1¡¢ÏÂÔØhttp://www.opengl.org/resources/libraries/glut/glutdlls37beta.zip²¢½âѹ£»
2¡¢ÔÚvs2008ÖУ¬°Ñ½âѹÎļþ¼ÐÀïµÄglut.h¸´ÖƵ½ vs2008°²×°Ä¿Â¼\VC\include\Îļþ¼ÐÖУ¬°Ñglut.libºÍglut32.lib¸´ÖƵ½ vs2008°²×°Ä¿Â¼\VC\lib\Îļþ¼ ......
¶¨Ò壺Éèa¶ÔbµÄ³Ë·¨ÄæÔªÊÇxÔò¿ÉÒÔ¼ÇΪa*x=1 mod b£¬¼´aºÍxµÄ»ý³ýÒÔbµÄÓàÊýÊÇ1£»
³Ë·¨ÄæÔª³£ÓÃËã·¨ÊÇÅ·¼¸ÀïµÂËã·¨£º
//Ëã·¨Çód¹ØÓÚÄ£fµÄ³Ë·¨ÄæÔªd-1 £¬¼´ d* d-1 mod f = 1
¡¡¡¡1 ¡£(X1£¬X2£¬X3) := (1£¬0£¬f)£» (Y1£¬Y2£¬Y3) := (0£¬1£¬d)
¡¡¡¡2¡£ if (Y3=0) then return d-1 = null //ÎÞÄæÔª
......
תÌûhttp://www.cppblog.com/bidepan2023/archive/2008/01/22/41632.html
CSocketÅÉÉúÓÚCAsyncSocket, ËùÓÐÊ©ÖîÓÚÉϵIJÙ×÷½ÔΪͬ²½²Ù×÷¡£±ÈÈçConnnect,ReceiveµÈ¡£
ͬ²½²Ù×÷µÄÓŵãÊǼòµ¥Ò×Ó㬵«È±µãÒ²ÏÔ¶øÒ×¼û£¬Ð§ÂʵÍÏ£¬ÒòΪÄã±ØÐëµÈµ½Ò»¸ö²Ù×÷Íê³ÉÖ®ºó²ÅÄܽøÐÐÏÂÒ»¸ö²Ù×÷¡£
Èç¹ûÄãºÜ¹ØÐÄЧÂÊ£¬¾ÍÓ¦¸ÃÓÅÏÈʹÓÃCAsyncS ......
¸´ÔÓµÄC\C++ÉùÃ÷£¬³£³öÏÖÔÚѧУµÄ¿¼¾í£¬ÃæÊÔÌâ»òÊÇÅ£ÈËÀÏÍâµÄ´úÂëÖС£
ÎÒÃÇÔÚʵ¼ÊµÄ¹¤×÷ÖУ¬Ó¦¸Ã¾¡¿ÉÄÜÉÙʹÓø´ÔÓµÄÉùÃ÷¡£¸´ÔÓµÄÉùÃ÷£¬»áÈÃÔĶÁÄú´úÂëµÄÈ˺ÜÊÇÓôÃÆ¡£
ËäÈ»²»Ê¹ÓÃÕâÖÖ¸´ÔÓµÄÉùÃ÷£¬µ«»¹ÊÇÓ¦¸Ã°Ñ½«ÈçºÎ½âÎöÕâÖÖ¸´ÔÓµÄÉùÃ÷µÄ·½·¨¼ÇÔÚÐÄÖС£
ËùÒÔ£¬ÎÒ°ÑÕâÖÖ·½·¨¼Ç¼ÏÂÀ´£¬ÒÔ±¸²»Ê±Ö®Ðè¡£
ÈëÃÅÌâ
1) Ò»¸öÕûÐ ......