Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

Java sort Ô´Âë½âÎö Object part

  ÉϴηÖÎöÁËJava¶ÔprimitiveµÄÅÅÐò£¬Ê¹ÓõÄÊÇÓÅ»¯µÄ¿ìËÙÅÅÐòËã·¨¡£Õâ´Î½éÉÜJava¶ÔObject¶ÔÏó(Comparable)µÄÅÅÐò¡£
JavaʹÓÃÁ˹鲢¶ÔObjectÅÅÐò£¬¹ØÓڹ鲢ÅÅÐòµÄϸ½Ú£¬Çë²é¿´http://zh.wikipedia.org/zh/%E5%BD%92%E5%B9%B6%E6%8E%92%E5%BA%8F
¹é²¢ÅÅÐòÒ²ÓÐÒ»¸öÔËÐÐ״̬ͼ£¬²»¹ý¿´×Åȷʵͦ·Ñ½âµÄ =¡£=£¡
ÔÚÁ˽âÁ˹鲢ÅÅÐòµÄÔ­ÀíÖ®ºó£¬ÎÒÃÇչʾJavaµÄÔ´Â룬À´ÂýÂý·ÖÎö¡£
public static void sort(Object[] a) {
Object[] aux = (Object[])a.clone();
mergeSort(aux, a, 0, a.length, 0);
}

Ê×ÏÈËü¿Ë¡ÁËÒ»·Ý¿½±´£¬È»ºó°Ñ¿½±´ºÍÔ´Êý×é¶¼´«ÈëmergeSort·½·¨¡£¾ÍÊǵÚÒ»µÚ¶þ¸ö²ÎÊý¡£
ÁíÍâ3¸ö²ÎÊý·Ö±ðÊÇ£ºlow£¬high£¬off¡£lowºÍhighûɶ¶à˵µÄ£¬¾ÍÊÇÉÏϽ磬²»¹ýoffͦÓÐÒâ˼µÄ¡£Õâ¸ö±äÁ¿Ã»ÓУ¬Ò²²»Ó°Ïì
ÅÅÐòµÄÂß¼­¡£ÎªÊ²Ã´»áÓÐÄØ£¿ÏÈÂô¸ö¹Ø×Ó¡£

private static void
mergeSort(Object[] src,
Object[] dest,
int low,
int high,
int off) {
int length = high - low;
// Insertion sort on smallest arrays
if (length < INSERTIONSORT_THRESHOLD) {
for (int i=low; i<high; i++)
for (int j=i; j>low &&
((Comparable) dest[j-1]).
compareTo(dest[j])>0; j--)
swap(dest, j, j-1);
return;
}
Õâ¶Î¿´×ŷdz£ÊìϤ£¬¾ÍÊǵ±³¤¶ÈСÓÚINSERTIONSORT_THRESHOLDµÄʱºò£¬ÓòåÈëÅÅÐò¡£Õâ¸öÖµ£¬»¹ÊÇ7.
´ó¼ÒÈç¹û»¹¼ÇµÃÔÚ¿ìËÙÅÅÐòÖУ¬Ö±½Óhard codingÁËÒ»¸ö7¡£¿É¼û sun µÄ³ÌÐòÔ±£¬Ò²ÊÇ»áÓÐʧÎóµÄ£¡´ó¼Ò¶¼ÊÇÈË£¬Öйú³ÌÐòÔ±
Ö»Òª²»¸¡Ô꣬»¹ÊÇÄܹ»ºÜÅ£±ÆµÄ¡£¡£¡£  Óе㳶ԶÁË¡£
ÆäÖÐµÄ swap() ¾Í²»ÔÙÀÛÊöÁË¡£
int destLow = low;
int destHigh = high;
low += off;
high += off;
int mid = (low + high) >> 1;
mergeSort(dest, src, low, mid, -off);
mergeSort(dest, src, mid, high, -off);

½ÓÏÂÀ´Ò»¶Î£¬Êǵ±³¤¶È´óÓÚ7ʱ£¬°ÑÊý×é·ÖÁ½¶Ë£¬·Ö±ðµÝ¹éÅÅÐò¡£
ϸÐĵÄÈËÒѾ­·¢ÏÖÁ˰ÂÃîµÄµØ·½£¬ÔÚÍⲿµ÷ÓÃmergeSortʱ£¬´«ÈëµÄ²ÎÊý˳ÐòÊÇ src, dest¡£¿ÉÊÇËüµÝ¹éʱ£¬ÎªÊ²Ã´´«Èëdest£¬srcÄØ£¿
λÖû¥»»µ½µ×´ú±


Ïà¹ØÎĵµ£º

JavaÐéÄâ»úÄÚ´æµ÷Õû

JavaÐéÄâ»úĬÈÏ·ÖÅä64MÄڴ棬Èç¹ûÄãµÄÓ¦ÓñȽϴ󣬳¬³ö64MÄڴ棬JavaÐéÄâ»ú¾Í»áÅ׳öOutOfMemoryError£¬²¢Í£Ö¹ÔËÐС£²»¹ÜÊÇʲôӦÓã¨WebÓ¦Óá¢ApplicationµÈ£©£¬Ö»ÐèÒªÐÞ¸ÄÄãµÄ»úÆ÷ÉϵÄÔËÐÐJavaÃüÁÔÚjava xxxÃüÁîÖÐÌí¼Ó-Xms(×îСʹÓÃÄÚ´æ)¡¢-Xmx£¨×î´óʹÓÃÄڴ棩¼´¿É½â¾ö¡£µ±È»£¬Õâ¶ùµÄÄÚ´æÈÝÁ¿¶¼ÊÇÖ¸ÎïÀíÄڴ棬²»Ä ......

³£ÓÃJavaÃüÁî

¶þ¡¢³£ÓÃJavaÃüÁî
1.¡çjavac <opitions><source files>
±àÒëÔ´´úÂë
2.¡çjava <options> class [args]
Ö´ÐÐÀàÎļþ£¨Byte code Îļþ£©
3.¡çjavadoc [options] [packagenames] [sourcefiles] [@files]
Éú³ÉJavadocÎĵµ
5.¡çjar {ctxu} {jar -flie} [manifest -flie] [-c directory] fiels…
½ ......

¹ØÓÚJavaµÄ¼¸¸öÎÊÌâ

×î½üÃæÊÔÁ˺ܶ๫˾£¬Ò»Ð©±ÊÊÔºÍÃæÊÔµÄÎÊÌâÈÃÎÒÉîÓид¥¡£ËäȻ˵×Ô¼º¶ÔJavaÒѾ­ºÜÊìϤÁË£¬²»¹ýµ±Ãæ¶ÔһЩϸ½ÚµÄʱºò£¬×Ô¼ºÈ·ÊµÓеãÎÞ´ÓÏÂÊÖ¡£ÏÂÃæ¼òµ¥µÄÁоټ¸¸öÀý×Ó£º
1.JavaÖжѺÍÕ»µÄÇø±ð
        Æäʵ£¬Õâ¸öÎÊÌâ²¢²»ÊǺÜÄÑ¡£²»¹ýÒ²ÐíºÜ¶à³ÌÐòÔ±ÍùÍùºöÂÔÁËÕâÒ»µã£¬ÓÈÆ ......

µÚÒ»´Î×öJava web ÏîÄ¿

  Õâ¶Ìʱ¼ä£¬Íê³ÉÁËÒ»¸ö½ÏΪ¼òµ¥µÄϵͳ Ò»¸ö½ÌÓýÅàѵ»ú¹¹µÄÐÅÏ¢¹ÜÀíϵͳ£¬Ö÷ÒªÊÇͨ¹ý²»Í¬µÄ½ÇÉ«·ÖÅä½øÈ벻ͬµÄ½çÃæ£¬×öÏàÓ¦µÄ¹¤×÷£¬ÒòΪÔÚȨÏÞ·½Ã滹ûŪºÃ£¬Ã»ÓÐÓõ½Ajax¡£½ÇÉ«ÓÐϵͳ¹ÜÀíÔ±£¬×ÉѯÖ÷¹Ü£¬×Éѯʦ£¬Êг¡×¨Ô±£¬Êг¡²¿Ö÷¹Ü£¬ÁªÏµÈË£¬µÈµÈ¡£ÒòΪµ±³õдµÄʱºò£¬ÏµÍ³µÄÀ©Õ¹ÐÔ»¹¿ÉÒÔ£¬ËùÒÔÄã¿ÉÒÔÔö¼ÓÒ»¸ö½ÇÉ«£¬ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ