From 83792fdae6a917a37fd15af354ba0b5b5fc78ee3 Mon Sep 17 00:00:00 2001 From: linyongji Date: Mon, 25 Jan 2021 16:13:08 +0800 Subject: [PATCH] =?UTF-8?q?=E5=88=86=E6=94=AF18=E5=AE=8C=E6=88=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 8 ++++++ Alogrithm/.vs/Alogrithm/v16/.suo | Bin 105984 -> 110592 bytes Alogrithm/Alogrithm/Alogrithm.vcxproj | 5 +++- Alogrithm/Alogrithm/Alogrithm.vcxproj.filters | 9 +++++++ Alogrithm/Alogrithm/config/18_PlusOne.ini | 24 ++++++++++++++++++ Alogrithm/Alogrithm/include/18_PlusOne.h | 6 +++++ Alogrithm/Alogrithm/src/18_PlusOne.cpp | 24 ++++++++++++++++++ Alogrithm/Alogrithm/src/main.cpp | 5 ++-- Alogrithm/UnitTest/UnitTest.cpp | 23 +++++++++++++++++ Alogrithm/UnitTest/UnitTest.vcxproj | 2 +- Alogrithm/UnitTest/pch.cpp | 2 +- Alogrithm/UnitTest/pch.h | 1 + 12 files changed, 103 insertions(+), 6 deletions(-) create mode 100644 Alogrithm/Alogrithm/config/18_PlusOne.ini create mode 100644 Alogrithm/Alogrithm/include/18_PlusOne.h create mode 100644 Alogrithm/Alogrithm/src/18_PlusOne.cpp diff --git a/.gitignore b/.gitignore index 348e7e4..4d061b2 100644 --- a/.gitignore +++ b/.gitignore @@ -154,3 +154,11 @@ Alogrithm/.vs/Alogrithm/v16/ipch/AutoPCH/5ccdb9c64312b2ee/16_REVERSEBITS.ipch Alogrithm/.vs/Alogrithm/v16/ipch/AutoPCH/969dd2cbf6a00d1b/16_REVERSEBITS.ipch Alogrithm/.vs/Alogrithm/v16/TestStore/0/003.testlog Alogrithm/Alogrithm/Debug/16_ReverseBits.obj +Alogrithm/TestResults/0850ae84-7979-49f9-8ba5-b749ab8d4aa5/林_MI-1 2021-01-25 15_17_29.coverage +Alogrithm/TestResults/ebfec9da-5725-4b9b-ae27-dbbecbce3f2d/林_MI-1 2021-01-25 15_16_21.coverage +Alogrithm/UnitTest/Debug/UnitTest.tlog/link.10456.delete.1.tlog +Alogrithm/.vs/Alogrithm/v16/ipch/AutoPCH/13d1a063a12e2911/17_WORDBREAK.ipch +Alogrithm/.vs/Alogrithm/v16/ipch/AutoPCH/314d19c9f4445d9e/18_PLUSONE.ipch +Alogrithm/.vs/Alogrithm/v16/ipch/AutoPCH/a71bf0a3ca35e643/18_PLUSONE.ipch +Alogrithm/.vs/Alogrithm/v16/TestStore/0/004.testlog +Alogrithm/Alogrithm/Debug/18_PlusOne.obj diff --git a/Alogrithm/.vs/Alogrithm/v16/.suo b/Alogrithm/.vs/Alogrithm/v16/.suo index 644a4f682149d464d398dd826e064dd118788cad..83b29f13c238b2bd7fde4789773ca5a3d3a41fe7 100644 GIT binary patch delta 12988 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 delta 9126 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 Console - true + DebugFull ../Alogrithm/Debug/2_ExcelSheetColumnTitle.obj;%(AdditionalDependencies) @@ -148,6 +148,7 @@ + @@ -167,6 +168,7 @@ + @@ -185,6 +187,7 @@ + diff --git a/Alogrithm/Alogrithm/Alogrithm.vcxproj.filters b/Alogrithm/Alogrithm/Alogrithm.vcxproj.filters index 97af554..459def8 100644 --- a/Alogrithm/Alogrithm/Alogrithm.vcxproj.filters +++ b/Alogrithm/Alogrithm/Alogrithm.vcxproj.filters @@ -75,6 +75,9 @@ 源文件\src + + 源文件\src + @@ -125,6 +128,9 @@ 头文件\include + + 头文件\include + @@ -175,5 +181,8 @@ 资源文件\config + + 资源文件\config + \ No newline at end of file diff --git a/Alogrithm/Alogrithm/config/18_PlusOne.ini b/Alogrithm/Alogrithm/config/18_PlusOne.ini new file mode 100644 index 0000000..0e0f0f6 --- /dev/null +++ b/Alogrithm/Alogrithm/config/18_PlusOne.ini @@ -0,0 +1,24 @@ +[Test1] +Input=1,2,3 +Output=1,2,4 +[Test2] +Input=1,2,9 +Output=1,3,0 +[Test3] +Input=1,9,9,9 +Output=2,0,0,0 +[Test4] +Input=9,9,9,9 +Output=1,0,0,0,0 +[Test5] +Input=1,9,8,8 +Output=1,9,8,9 +[Test6] +Input=1,9,8,9 +Output=1,9,9,0 +[Test7] +Input=0 +Output=1 +[Test8] +Input=2,0,1,1,2,4,1,9,9,9 +Output=2,0,1,1,2,4,2,0,0,0 \ No newline at end of file diff --git a/Alogrithm/Alogrithm/include/18_PlusOne.h b/Alogrithm/Alogrithm/include/18_PlusOne.h new file mode 100644 index 0000000..9e5d30e --- /dev/null +++ b/Alogrithm/Alogrithm/include/18_PlusOne.h @@ -0,0 +1,6 @@ +#pragma once + +#include +#include +#include +int* PlusOne(int* digits, int digitsSize, int* returnSize); \ No newline at end of file diff --git a/Alogrithm/Alogrithm/src/18_PlusOne.cpp b/Alogrithm/Alogrithm/src/18_PlusOne.cpp new file mode 100644 index 0000000..2c51771 --- /dev/null +++ b/Alogrithm/Alogrithm/src/18_PlusOne.cpp @@ -0,0 +1,24 @@ +#include "../include/18_PlusOne.h" +//ĿһɵķǿʾķǸڸĻϼһ +// λִλ ÿԪֻ洢֡ +// Լ 0 ֮⣬㿪ͷ +//˼·ӺǰΪ9λ0ǰһλ1Ϊ9λ1ԭ +// 磺999,9999999ȣdigitsSize+1ռ䣬λ1λ0鳤ΪdigitsSize+1 +int* PlusOne(int* digits, int digitsSize, int* returnSize) { + for (int i = digitsSize - 1; i >= 0; --i) {//Ӻǰʼ + if (digits[i] == 9) { //жDz9 + digits[i] = 0; //90 + } + else { + digits[i]++; //99ǰһλ1 + *returnSize = digitsSize; //鳤Ȼԭij + return digits; //صdigitsҪĵ + } + } + //㣬˵λλˣ99,999,9999 + int* result = (int*)malloc(sizeof(int) * (digitsSize + 1));//һint *digitsSize+1ռ + memset(result, 0, sizeof(int) * (digitsSize + 1));//飬ÿһλ0 + result[0] = 1; //λΪ1λΪ0 + *returnSize = digitsSize + 1;//ijΪԭ鳤ȼ1 + return result; +} \ No newline at end of file diff --git a/Alogrithm/Alogrithm/src/main.cpp b/Alogrithm/Alogrithm/src/main.cpp index 6fb3c89..14b0731 100644 --- a/Alogrithm/Alogrithm/src/main.cpp +++ b/Alogrithm/Alogrithm/src/main.cpp @@ -1,9 +1,8 @@ #include -#include "../include/16_ReverseBits.h" int main() { - printf("%ld\n", ReverseBits(1)); - return 0; + + } diff --git a/Alogrithm/UnitTest/UnitTest.cpp b/Alogrithm/UnitTest/UnitTest.cpp index 8b0fe93..302c323 100644 --- a/Alogrithm/UnitTest/UnitTest.cpp +++ b/Alogrithm/UnitTest/UnitTest.cpp @@ -18,6 +18,7 @@ using namespace Microsoft::VisualStudio::CppUnitTestFramework; #define FileName_14 "../Alogrithm/config/14_SingleNumber.ini" #define FileName_15 "../Alogrithm/config/15_WordPattern.ini" #define FileName_16 "../Alogrithm/config/16_ReverseBits.ini" +#define FileName_18 "../Alogrithm/config/18_PlusOne.ini" namespace UnitTest @@ -310,4 +311,26 @@ namespace UnitTest } } }; + TEST_CLASS(UnitTest_18) + { + TEST_METHOD(TestMethode1) + { + char Section_Name[100][10] = { 0 }; + int Section_Count = CalcCount(100, Section_Name, FileName_18); + int input_count = 0, output_count = 0, returnSize = 0; + int* input_value; + int* output_value; + CString input,output; + for (int i = 0; i < Section_Count; i++) { + GetPrivateProfileString(Section_Name[i], "Input", " ", input.GetBuffer(200), 200, FileName_18); + GetPrivateProfileString(Section_Name[i], "Output", " ", output.GetBuffer(200), 200, FileName_18); + input_value = str_device(input, &input_count); + output_value = str_device(output, &output_count); + int* nReal = PlusOne(input_value, input_count, &returnSize); + for (int i = 0; i < input_count; i++) { + Assert::AreEqual(nReal[i], output_value[i]); + } + } + } + }; } diff --git a/Alogrithm/UnitTest/UnitTest.vcxproj b/Alogrithm/UnitTest/UnitTest.vcxproj index 1e9fecc..0ea3f5e 100644 --- a/Alogrithm/UnitTest/UnitTest.vcxproj +++ b/Alogrithm/UnitTest/UnitTest.vcxproj @@ -103,7 +103,7 @@ Windows $(VCInstallDir)UnitTest\lib;%(AdditionalLibraryDirectories) DebugFull - ../Alogrithm/Debug/1_ContainsNearbyDuplicate.obj;../Alogrithm/Debug/2_ExcelSheetColumnTitle.obj;../Alogrithm/Debug/3_bool IsUgly.obj;../Alogrithm/Debug/4_IsPalindrome.obj;../Alogrithm/Debug/5_MinDepth.obj;../Alogrithm/Debug/6_ContainsDuplicate.obj;../Alogrithm/Debug/7_MaxDepth.obj;../Alogrithm/Debug/8_HammingWeight.obj;../Alogrithm/Debug/9_AddBinary.obj;../Alogrithm/Debug/10_BinaryTreePaths.obj;../Alogrithm/Debug/11_CanWinNim.obj;../Alogrithm/Debug/12_IsValid.obj;../Alogrithm/Debug/13_MyAtoi.obj;../Alogrithm/Debug/14_SingleNumber.obj;../Alogrithm/Debug/15_WordPattern.obj;../Alogrithm/Debug/16_ReverseBits.obj;%(AdditionalDependencies) + ../Alogrithm/Debug/1_ContainsNearbyDuplicate.obj;../Alogrithm/Debug/2_ExcelSheetColumnTitle.obj;../Alogrithm/Debug/3_bool IsUgly.obj;../Alogrithm/Debug/4_IsPalindrome.obj;../Alogrithm/Debug/5_MinDepth.obj;../Alogrithm/Debug/6_ContainsDuplicate.obj;../Alogrithm/Debug/7_MaxDepth.obj;../Alogrithm/Debug/8_HammingWeight.obj;../Alogrithm/Debug/9_AddBinary.obj;../Alogrithm/Debug/10_BinaryTreePaths.obj;../Alogrithm/Debug/11_CanWinNim.obj;../Alogrithm/Debug/12_IsValid.obj;../Alogrithm/Debug/13_MyAtoi.obj;../Alogrithm/Debug/14_SingleNumber.obj;../Alogrithm/Debug/15_WordPattern.obj;../Alogrithm/Debug/16_ReverseBits.obj;../Alogrithm/Debug/18_PlusOne.obj;%(AdditionalDependencies) diff --git a/Alogrithm/UnitTest/pch.cpp b/Alogrithm/UnitTest/pch.cpp index 39c05ed..0ecc6af 100644 --- a/Alogrithm/UnitTest/pch.cpp +++ b/Alogrithm/UnitTest/pch.cpp @@ -54,7 +54,7 @@ int CalcCount(int n, char(*str)[10],const char *FileName) int* str_device(CString str, int* value_count) { char* token; //存放被切割后的第一个子串 - static int Section_devide[500];//存放字符切割完成以后的数组元素值 + int* Section_devide = (int*)malloc(sizeof(int) * 200);//存放字符切割完成以后的数组元素值 char Section_value[500] = { 0 };//存放nums转换成string类型的结果 memset(Section_value, 0, sizeof(char) * 500); *value_count = 0; diff --git a/Alogrithm/UnitTest/pch.h b/Alogrithm/UnitTest/pch.h index 4c93404..e008b78 100644 --- a/Alogrithm/UnitTest/pch.h +++ b/Alogrithm/UnitTest/pch.h @@ -29,6 +29,7 @@ #include"../Alogrithm/include/14_SingleNumber.h" #include"../Alogrithm/include/15_WordPattern.h" #include"../Alogrithm/include/16_ReverseBits.h" +#include"../Alogrithm/include/18_PlusOne.h" int CalcCount(int n, char(*str)[10],const char *FileName);