[Mndiff-dev] [mndiff]: r32 - trunk/mnzip/mnzip.c

michael subversion at mplayerhq.hu
Sun Jun 17 12:25:01 CEST 2007


Author: michael
Date: Sun Jun 17 12:25:01 2007
New Revision: 32

Log:
do bubble sort for small arrays (faster)


Modified:
   trunk/mnzip/mnzip.c

Modified: trunk/mnzip/mnzip.c
==============================================================================
--- trunk/mnzip/mnzip.c	(original)
+++ trunk/mnzip/mnzip.c	Sun Jun 17 12:25:01 2007
@@ -206,6 +206,18 @@ static void qsort2(uint8_t **ptr, int *i
 
     assert(len>1);
 
+    if(len<10){
+        for(j=len-1; j>0; j--){
+            for(i=0; i<j; i++){
+                if(idx[i] > idx[i+1]){
+                    FFSWAP(int     , idx[i], idx[i+1]);
+                    FFSWAP(uint8_t*, ptr[i], ptr[i+1]);
+                }
+            }
+        }
+        return;
+    }
+
     pivot= idx[len>>1];
     if(idx[0] < pivot){
         if     (idx[len-1] < idx[0]) pivot= idx[0];



More information about the Mndiff-dev mailing list