@@ -94,3 +94,10 @@ Alogrithm/Debug/UnitTest.pdb | |||||
Alogrithm/.vs/Alogrithm/v16/ipch/AutoPCH/b7e343aeb2d15224/4_ISPALINDROME.ipch | Alogrithm/.vs/Alogrithm/v16/ipch/AutoPCH/b7e343aeb2d15224/4_ISPALINDROME.ipch | ||||
Alogrithm/Alogrithm/Debug/4_IsPalindrome.obj | Alogrithm/Alogrithm/Debug/4_IsPalindrome.obj | ||||
Alogrithm/TestResults/6fafde8c-d7b3-4676-8e54-90b128e5f315/林_MI-1 2021-01-15 09_25_22.coverage | Alogrithm/TestResults/6fafde8c-d7b3-4676-8e54-90b128e5f315/林_MI-1 2021-01-15 09_25_22.coverage | ||||
Alogrithm/.vs/Alogrithm/v16/ipch/AutoPCH/2fc14b893d0d0c4d/5_MINDEPTH.ipch | |||||
Alogrithm/.vs/Alogrithm/v16/ipch/AutoPCH/3074205571b356e6/6_CONTAINSDUPLICATE.ipch | |||||
Alogrithm/.vs/Alogrithm/v16/ipch/AutoPCH/481f9764231e57bf/4_ISPALINDROME.ipch | |||||
Alogrithm/.vs/Alogrithm/v16/ipch/AutoPCH/76af66dca66611c4/5_MINDEPTH.ipch | |||||
Alogrithm/.vs/Alogrithm/v16/ipch/AutoPCH/ab4a44a8d749bee1/6_CONTAINSDUPLICATE.ipch | |||||
Alogrithm/.vs/Alogrithm/v16/ipch/AutoPCH/caf245688b80a979/5_MINDEPTH.ipch | |||||
Alogrithm/Alogrithm/Debug/6_ContainsDuplicate.obj |
@@ -144,6 +144,7 @@ | |||||
<ClCompile Include="src\2_ExcelSheetColumnTitle.cpp" /> | <ClCompile Include="src\2_ExcelSheetColumnTitle.cpp" /> | ||||
<ClCompile Include="src\3_bool IsUgly.cpp" /> | <ClCompile Include="src\3_bool IsUgly.cpp" /> | ||||
<ClCompile Include="src\4_IsPalindrome.cpp" /> | <ClCompile Include="src\4_IsPalindrome.cpp" /> | ||||
<ClCompile Include="src\6_ContainsDuplicate.cpp" /> | |||||
<ClCompile Include="src\main.cpp" /> | <ClCompile Include="src\main.cpp" /> | ||||
</ItemGroup> | </ItemGroup> | ||||
<ItemGroup> | <ItemGroup> | ||||
@@ -151,12 +152,14 @@ | |||||
<ClInclude Include="include\2_ExcelSheetColumnTitle.h" /> | <ClInclude Include="include\2_ExcelSheetColumnTitle.h" /> | ||||
<ClInclude Include="include\3_bool IsUgly.h" /> | <ClInclude Include="include\3_bool IsUgly.h" /> | ||||
<ClInclude Include="include\4_IsPalindrome.h" /> | <ClInclude Include="include\4_IsPalindrome.h" /> | ||||
<ClInclude Include="include\6_ContainsDuplicate.h" /> | |||||
</ItemGroup> | </ItemGroup> | ||||
<ItemGroup> | <ItemGroup> | ||||
<None Include="config\1_ContainsNearbyDuplicate.ini" /> | <None Include="config\1_ContainsNearbyDuplicate.ini" /> | ||||
<None Include="config\2_ExcelSheetColumnTiTle.ini" /> | <None Include="config\2_ExcelSheetColumnTiTle.ini" /> | ||||
<None Include="config\3_bool IsUgly.ini" /> | <None Include="config\3_bool IsUgly.ini" /> | ||||
<None Include="config\4_IsPalindrome.ini" /> | <None Include="config\4_IsPalindrome.ini" /> | ||||
<None Include="config\6_ContainsDuplicate.ini" /> | |||||
</ItemGroup> | </ItemGroup> | ||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> | <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> | ||||
<ImportGroup Label="ExtensionTargets"> | <ImportGroup Label="ExtensionTargets"> | ||||
@@ -39,6 +39,9 @@ | |||||
<ClCompile Include="src\4_IsPalindrome.cpp"> | <ClCompile Include="src\4_IsPalindrome.cpp"> | ||||
<Filter>源文件\src</Filter> | <Filter>源文件\src</Filter> | ||||
</ClCompile> | </ClCompile> | ||||
<ClCompile Include="src\6_ContainsDuplicate.cpp"> | |||||
<Filter>源文件\src</Filter> | |||||
</ClCompile> | |||||
</ItemGroup> | </ItemGroup> | ||||
<ItemGroup> | <ItemGroup> | ||||
<ClInclude Include="include\2_ExcelSheetColumnTitle.h"> | <ClInclude Include="include\2_ExcelSheetColumnTitle.h"> | ||||
@@ -53,6 +56,9 @@ | |||||
<ClInclude Include="include\4_IsPalindrome.h"> | <ClInclude Include="include\4_IsPalindrome.h"> | ||||
<Filter>头文件\include</Filter> | <Filter>头文件\include</Filter> | ||||
</ClInclude> | </ClInclude> | ||||
<ClInclude Include="include\6_ContainsDuplicate.h"> | |||||
<Filter>头文件\include</Filter> | |||||
</ClInclude> | |||||
</ItemGroup> | </ItemGroup> | ||||
<ItemGroup> | <ItemGroup> | ||||
<None Include="config\3_bool IsUgly.ini"> | <None Include="config\3_bool IsUgly.ini"> | ||||
@@ -67,5 +73,8 @@ | |||||
<None Include="config\4_IsPalindrome.ini"> | <None Include="config\4_IsPalindrome.ini"> | ||||
<Filter>资源文件\config</Filter> | <Filter>资源文件\config</Filter> | ||||
</None> | </None> | ||||
<None Include="config\6_ContainsDuplicate.ini"> | |||||
<Filter>资源文件\config</Filter> | |||||
</None> | |||||
</ItemGroup> | </ItemGroup> | ||||
</Project> | </Project> |
@@ -0,0 +1,21 @@ | |||||
[test1] | |||||
input=1,2,3,1 | |||||
output=1 | |||||
[test2] | |||||
input=1,2,3,4,5,6 | |||||
output=0 | |||||
[test3] | |||||
input=1,2,3,4,5,2 | |||||
output=1 | |||||
[test4] | |||||
input=3,3,3,3,3 | |||||
output=1 | |||||
[test5] | |||||
input=0,0,0,0 | |||||
output=1 | |||||
[test6] | |||||
input=1,8,3,9 | |||||
output=0 | |||||
[test7] | |||||
input=214748367,-214748368,-214748368 | |||||
output=1 |
@@ -0,0 +1,5 @@ | |||||
#pragma once | |||||
#include <math.h> | |||||
#include <stdlib.h> | |||||
int cmp_6(const void* _a, const void* _b); | |||||
bool containsDuplicate(int* nums, int numsSize); |
@@ -0,0 +1,16 @@ | |||||
#include"../include/6_ContainsDuplicate.h" | |||||
int cmp_6(const void* _a, const void* _b) { | |||||
int a = *(int*)_a, b = *(int*)_b; | |||||
return a - b; | |||||
} | |||||
//6.排序,比较相邻元素是否相等,若相等则返回true,否则返回false。 | |||||
bool containsDuplicate(int* nums, int numsSize) { | |||||
qsort(nums, numsSize, sizeof(int), cmp_6); | |||||
for (int i = 0; i < numsSize - 1; i++) { | |||||
if (nums[i] == nums[i + 1]) { | |||||
return true; | |||||
} | |||||
} | |||||
return false; | |||||
} |
@@ -6,6 +6,7 @@ using namespace Microsoft::VisualStudio::CppUnitTestFramework; | |||||
#define FileName_2 "../Alogrithm/config/2_ExcelSheetColumnTiTle.ini" | #define FileName_2 "../Alogrithm/config/2_ExcelSheetColumnTiTle.ini" | ||||
#define FileName_3 "../Alogrithm/config/3_bool IsUgly.ini" | #define FileName_3 "../Alogrithm/config/3_bool IsUgly.ini" | ||||
#define FileName_4 "../Alogrithm/config/4_IsPalindrome.ini" | #define FileName_4 "../Alogrithm/config/4_IsPalindrome.ini" | ||||
#define FileName_6 "../Alogrithm/config/6_ContainsDuplicate.ini" | |||||
namespace UnitTest | namespace UnitTest | ||||
{ | { | ||||
@@ -73,4 +74,22 @@ namespace UnitTest | |||||
} | } | ||||
} | } | ||||
}; | }; | ||||
TEST_CLASS(UnitTest_6) | |||||
{ | |||||
TEST_METHOD(TestMethode1) | |||||
{ | |||||
char Section_Name[100][10] = { 0 }; | |||||
int Section_Count = CalcCount(100, Section_Name, FileName_6); | |||||
int array_count = 0; | |||||
int* Section_Value; | |||||
CString Na, Nb, nExpect; | |||||
for (int i = 0; i < Section_Count; i++) { | |||||
GetPrivateProfileString(Section_Name[i], "input", " ", Na.GetBuffer(200), 200, FileName_6); | |||||
GetPrivateProfileString(Section_Name[i], "output", " ", nExpect.GetBuffer(20), 20, FileName_6); | |||||
Section_Value = str_device(Na, &array_count); | |||||
bool nReal = containsDuplicate(Section_Value, array_count); | |||||
Assert::AreEqual(nReal, CstrToBool(nExpect)); | |||||
} | |||||
} | |||||
}; | |||||
} | } |
@@ -103,7 +103,7 @@ | |||||
<SubSystem>Windows</SubSystem> | <SubSystem>Windows</SubSystem> | ||||
<AdditionalLibraryDirectories>$(VCInstallDir)UnitTest\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories> | <AdditionalLibraryDirectories>$(VCInstallDir)UnitTest\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories> | ||||
<GenerateDebugInformation>DebugFull</GenerateDebugInformation> | <GenerateDebugInformation>DebugFull</GenerateDebugInformation> | ||||
<AdditionalDependencies>../Alogrithm/Debug/1_ContainsNearbyDuplicate.obj;../Alogrithm/Debug/2_ExcelSheetColumnTitle.obj;../Alogrithm/Debug/3_bool IsUgly.obj;../Alogrithm/Debug/4_IsPalindrome.obj;%(AdditionalDependencies)</AdditionalDependencies> | |||||
<AdditionalDependencies>../Alogrithm/Debug/1_ContainsNearbyDuplicate.obj;../Alogrithm/Debug/2_ExcelSheetColumnTitle.obj;../Alogrithm/Debug/3_bool IsUgly.obj;../Alogrithm/Debug/4_IsPalindrome.obj;../Alogrithm/Debug/6_ContainsDuplicate.obj;%(AdditionalDependencies)</AdditionalDependencies> | |||||
</Link> | </Link> | ||||
</ItemDefinitionGroup> | </ItemDefinitionGroup> | ||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> | ||||
@@ -17,6 +17,7 @@ | |||||
#include"../Alogrithm/include/2_ExcelSheetColumnTitle.h" | #include"../Alogrithm/include/2_ExcelSheetColumnTitle.h" | ||||
#include"../Alogrithm/include/3_bool IsUgly.h" | #include"../Alogrithm/include/3_bool IsUgly.h" | ||||
#include"../Alogrithm/include/4_IsPalindrome.h" | #include"../Alogrithm/include/4_IsPalindrome.h" | ||||
#include"../Alogrithm/include/6_ContainsDuplicate.h" | |||||