quicksort.cc

来自「c++编写的并行拉马克遗传算法的程序。实现分析对接程序」· CC 代码 · 共 71 行

CC
71
字号
/* quicksort.cc */#ifdef sgi    #include "quicksort.h"#ifdef DEBUG#include <stdio.h>#include <string.h>#endif /* DEBUG */#else    extern "C"    {        #include "quicksort.h"#ifdef DEBUG#include <stdio.h>#include <string.h>#endif /* DEBUG */    }#endif/* \  Based on C.A.R.Hoare's original \ algorithm of 1962...*/#ifdef DEBUGextern FILE *logFile;#endif /* DEBUG */void quicksort( float e[], 		int isort[],		int left,		int right ){    int i, last;#ifdef DEBUG            char array[101];#endif  /* DEBUG */    if (left >= right) {	return;    }#ifdef DEBUG            strncpy( array, "----------------------------------------------------------------------------------------------------", (size_t)100 );            array[100] = '\0';            for (i=left+1; i<right; i++) array[i]=' ';            array[left] = 'L';            array[right] = 'R';            fprintf( logFile, "%s\n", array );#endif  /* DEBUG */    swap( isort, left, (left+right)/2 );    last = left;    for (i = left+1; i <= right; i++) {	if (e[isort[i]] < e[isort[left]]) {	    swap( isort, ++last, i );	}    }    swap( isort, (int)left, (int)last );    quicksort( e, isort, left,  last-1 );    quicksort( e, isort, last+1, right  );}/* EOF */

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?