¹é²¢ÅÅÐòËã·¨ 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++
Ïà¹ØÎĵµ£º
ѧϰlinuxϵÄc/c++±à³Ì
1£¬ÏÈÓÐlinux»·¾³
´îminGWºÍcygwin¶¼ÓеãÂé·³£¬×î×î¼òµ¥µÄ°ì·¨»¹ÊÇ×°¸öÕæÕýµÄlinux£¬ÓÃÐéÄâ»úÒ²ºÃ£¬ÔÚÍøÂçÉϵÄÁíһ̨»úÆ÷Ò²ºÃ¡£ÕâÑù²»½ö¿ì£¬¶øÇÒÄãÓÐÁËÕæÕýµÄ»·¾³¡£
2.»áC/C++ÓïÑÔ£¨¹À¼ÆÄã»áµÄ£©
3.ÈëÃŽ׶ÎÊìϤgccÃüÁîÐУ¬×î»ù±¾µÄ²ÎÊý£¬È磬-g,-W,-O,-o,-c ½¨Òé¿´man gcc(ºÜ´óÕÒÏ ......
¶¨Ò壺Éè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 ......
ÆÕͨ±äÁ¿ÊÇÖ±½Ó´«Öµshow(int a,int b)
Ö¸Õë±äÁ¿´«µÝµØÖ·show(int *a,int *b)
ÒýÓñäÁ¿ÊÇÒþʽ´«µØÖ· 1:int x;void show(int &x)£¬Êµ¼Ê´«µÝµÄÊÇxµÄµØÖ·p£¬µ«ÊǺ¯ÊýÄÚ²¿Ê¹ÓÃxʱ»á×Ô¶¯±ä³É*p
  ......
Ö÷Ò³£º http://www.christian-heffner.de/
ÏÂÔØÁ´½Ó£º http://www.christian-heffner.de/index.php?page=download¡´=en
¼ò½é£º
»ùÓÚLCCµÄÒ»¿îC±àÒëÆ÷£¬Óбê×¼µÄIDE½çÃæ£¬ÀàËÆVCµÄ½çÃæ£¬µ±È»ºÍDEV-C++»¹ÓÐMingW32 studio½çÃæÒ²ºÜÏñ£¬¿ÉÒÔÓÃÓÚ´´½¨Ð¡Ò»µãµÄ»ùÓÚCµÄ¹¤³Ì¡£
IDE´úÂë±à¼½ ......