PKU-程序设计实习-MySort函数

来源:互联网 发布:jsp和javascript哪个好 编辑:程序博客网 时间:2024/04/20 11:55
#include <iostream>#include <string.h>#include <stdio.h>using namespace std;void mysort(void* inputArray, const int nInput, const int dataSize, int cmpFunc(const void* elem1, const void* elem2)){char* input = (char*)inputArray;for(int i = 0; i < nInput - 1; i++){for(int j = i + 1; j < nInput; j++){if(cmpFunc(input + j * dataSize, input +i * dataSize) < 0){char* buf = new char[dataSize];memcpy(buf, input + i * dataSize, dataSize);memcpy(input + i * dataSize, input + j * dataSize, dataSize);memcpy(input + j * dataSize, buf, dataSize);delete buf;}}}}int MyCompare(const void* elem1, const void* elem2){unsigned int *p1, *p2;p1 = (unsigned int*) elem1;p2 = (unsigned int*) elem2;return (*p1 % 10) - (*p2 % 10);}#define NUM 5int main(){unsigned int an[NUM] = {8, 123, 11, 10, 4};mysort(an, NUM, sizeof(unsigned int), MyCompare);for(int i = 0; i < NUM; i++)printf("%d ", an[i]);return 0;}

原创粉丝点击