随笔分类 -  algorithm

摘要:bool _Permutation(char* str) { int len = strlen(str); for (int i = len - 2; i >= 0; --i) { if (str[i] i; --j) { if (str[j] > str[i]) { std::swap(str[i], str[j]); _strrev(str + i + 1); return true; } } } } _strrev(str); return false;}void Per... 阅读全文
posted @ 2013-11-17 19:40 avexer 阅读(172) 评论(0) 推荐(0)
摘要:int Partition(int* array, int low, int high) { int pivot = array[low]; while (low = pivot) { --high; } array[low] = array[high]; while (low < high && array[low] <= pivot) { ++low; } array[high] = array[low]; } array[low] = pivot; return low;}void qsort(int* array, int l... 阅读全文
posted @ 2013-11-01 23:10 avexer 阅读(191) 评论(0) 推荐(0)
摘要:bool _CanSwap(char* str, int start, int end) { while (start = 0; --i) { if (str[i] i; --j) { if (str[j] > str[i]) { std::swap(str[i], str[j]); _strrev(str + i + 1); return true; } } } } _strrev(str); return false;}void PermutationNoRec(char* s... 阅读全文
posted @ 2013-10-31 23:06 avexer 阅读(249) 评论(0) 推荐(0)