随笔分类 - 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...
阅读全文
摘要: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...
阅读全文
摘要: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...
阅读全文
浙公网安备 33010602011771号