diff --git a/45_SortArrayForMinNumber/SortArrayForMinNumber.cpp b/45_SortArrayForMinNumber/SortArrayForMinNumber.cpp index a5e05dd..8107674 100644 --- a/45_SortArrayForMinNumber/SortArrayForMinNumber.cpp +++ b/45_SortArrayForMinNumber/SortArrayForMinNumber.cpp @@ -8,14 +8,14 @@ Distributed under the BSD license. *******************************************************************/ //================================================================== -// 《剑指Offer——名企面试官精讲典型编程题》代码 -// 作者:何海涛 +// 銆婂墤鎸嘜ffer鈥斺斿悕浼侀潰璇曞畼绮捐鍏稿瀷缂栫▼棰樸嬩唬鐮 +// 浣滆咃細浣曟捣娑 //================================================================== -// 面试题45:把数组排成最小的数 -// 题目:输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼 -// 接出的所有数字中最小的一个。例如输入数组{3, 32, 321},则打印出这3个数 -// 字能排成的最小数字321323。 +// 闈㈣瘯棰45锛氭妸鏁扮粍鎺掓垚鏈灏忕殑鏁 +// 棰樼洰锛氳緭鍏ヤ竴涓鏁存暟鏁扮粍锛屾妸鏁扮粍閲屾墍鏈夋暟瀛楁嫾鎺ヨ捣鏉ユ帓鎴愪竴涓暟锛屾墦鍗拌兘鎷 +// 鎺ュ嚭鐨勬墍鏈夋暟瀛椾腑鏈灏忕殑涓涓備緥濡傝緭鍏ユ暟缁剓3, 32, 321}锛屽垯鎵撳嵃鍑鸿繖3涓暟 +// 瀛楄兘鎺掓垚鐨勬渶灏忔暟瀛321323銆 #include "cstdio" #include @@ -23,7 +23,7 @@ Distributed under the BSD license. int compare(const void* strNumber1, const void* strNumber2); -// int型整数用十进制表示最多只有10位 +// int鍨嬫暣鏁扮敤鍗佽繘鍒惰〃绀烘渶澶氬彧鏈10浣 const int g_MaxNumberLength = 10; char* g_StrCombine1 = new char[g_MaxNumberLength * 2 + 1]; @@ -34,7 +34,7 @@ void PrintMinNumber(const int* numbers, int length) if(numbers == nullptr || length <= 0) return; - char** strNumbers = (char**)(new int[length]); + char** strNumbers = (char**)(new char*[length]); for(int i = 0; i < length; ++i) { strNumbers[i] = new char[g_MaxNumberLength + 1]; @@ -52,9 +52,9 @@ void PrintMinNumber(const int* numbers, int length) delete[] strNumbers; } -// 如果[strNumber1][strNumber2] > [strNumber2][strNumber1], 返回值大于0 -// 如果[strNumber1][strNumber2] = [strNumber2][strNumber1], 返回值等于0 -// 如果[strNumber1][strNumber2] < [strNumber2][strNumber1], 返回值小于0 +// 濡傛灉[strNumber1][strNumber2] > [strNumber2][strNumber1], 杩斿洖鍊煎ぇ浜0 +// 濡傛灉[strNumber1][strNumber2] = [strNumber2][strNumber1], 杩斿洖鍊肩瓑浜0 +// 濡傛灉[strNumber1][strNumber2] < [strNumber2][strNumber1], 杩斿洖鍊煎皬浜0 int compare(const void* strNumber1, const void* strNumber2) { // [strNumber1][strNumber2] @@ -68,7 +68,7 @@ int compare(const void* strNumber1, const void* strNumber2) return strcmp(g_StrCombine1, g_StrCombine2); } -// ====================测试代码==================== +// ====================娴嬭瘯浠g爜==================== void Test(const char* testName, int* numbers, int length, const char* expectedResult) { if(testName != nullptr) @@ -107,7 +107,7 @@ void Test4() Test("Test4", numbers, sizeof(numbers)/sizeof(int), "111111"); } -// 数组中只有一个数字 +// 鏁扮粍涓彧鏈変竴涓暟瀛 void Test5() { int numbers[] = {321};