From 17bcf23a701cdeef0fc2587d849a6679ed16ec0c Mon Sep 17 00:00:00 2001
From: linyongji <lyj18391569527@163.com>
Date: Mon, 1 Feb 2021 18:51:49 +0800
Subject: [PATCH] no message

---
 Alogrithm/.vs/Alogrithm/v16/.suo              | Bin 118272 -> 141824 bytes
 Alogrithm/Alogrithm/Alogrithm.vcxproj         |   5 +++
 Alogrithm/Alogrithm/Alogrithm.vcxproj.filters |  15 +++++++
 Alogrithm/Alogrithm/Alogrithm.vcxproj.user    |   4 +-
 Alogrithm/Alogrithm/config/25_Partition.ini   |  28 +++++++++++++
 Alogrithm/Alogrithm/include/25_Partition.h    |   9 ++++
 Alogrithm/Alogrithm/include/Common.h          |   6 +++
 Alogrithm/Alogrithm/src/25_Partition.cpp      |  39 ++++++++++++++++++
 Alogrithm/Alogrithm/src/Common.cpp            |  11 +++++
 Alogrithm/Alogrithm/src/main.cpp              |  13 +++---
 Alogrithm/UnitTest/UnitTest.cpp               |  29 ++++++++++++-
 Alogrithm/UnitTest/pch.h                      |   1 +
 12 files changed, 152 insertions(+), 8 deletions(-)
 create mode 100644 Alogrithm/Alogrithm/config/25_Partition.ini
 create mode 100644 Alogrithm/Alogrithm/include/25_Partition.h
 create mode 100644 Alogrithm/Alogrithm/include/Common.h
 create mode 100644 Alogrithm/Alogrithm/src/25_Partition.cpp
 create mode 100644 Alogrithm/Alogrithm/src/Common.cpp

diff --git a/Alogrithm/.vs/Alogrithm/v16/.suo b/Alogrithm/.vs/Alogrithm/v16/.suo
index 0d6b62671cd2abad719d04fc3196b866736ee970..2105ed4cdd8e6b46edc98ae612ea4fc8d1e47ae5 100644
GIT binary patch
delta 15313
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

delta 11094
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

diff --git a/Alogrithm/Alogrithm/Alogrithm.vcxproj b/Alogrithm/Alogrithm/Alogrithm.vcxproj
index 7a3fa05..13cd0b4 100644
--- a/Alogrithm/Alogrithm/Alogrithm.vcxproj
+++ b/Alogrithm/Alogrithm/Alogrithm.vcxproj
@@ -157,6 +157,7 @@
     <ClCompile Include="src\22_Rotate.cpp" />
     <ClCompile Include="src\23_RestoreIpAddresses.cpp" />
     <ClCompile Include="src\24_LengthOfLongestSubstring.cpp" />
+    <ClCompile Include="src\25_Partition.cpp" />
     <ClCompile Include="src\2_ExcelSheetColumnTitle.cpp" />
     <ClCompile Include="src\3_bool IsUgly.cpp" />
     <ClCompile Include="src\4_IsPalindrome.cpp" />
@@ -165,6 +166,7 @@
     <ClCompile Include="src\7_MaxDepth.cpp" />
     <ClCompile Include="src\8_HammingWeight.cpp" />
     <ClCompile Include="src\9_AddBinary.cpp" />
+    <ClCompile Include="src\Common.cpp" />
     <ClCompile Include="src\main.cpp" />
   </ItemGroup>
   <ItemGroup>
@@ -184,6 +186,7 @@
     <ClInclude Include="include\22_Rotate.h" />
     <ClInclude Include="include\23_RestoreIpAddresses.h" />
     <ClInclude Include="include\24_LengthOfLongestSubstring.h" />
+    <ClInclude Include="include\25_Partition.h" />
     <ClInclude Include="include\2_ExcelSheetColumnTitle.h" />
     <ClInclude Include="include\3_bool IsUgly.h" />
     <ClInclude Include="include\4_IsPalindrome.h" />
@@ -192,6 +195,7 @@
     <ClInclude Include="include\7_MaxDepth.h" />
     <ClInclude Include="include\8_HammingWeight.h" />
     <ClInclude Include="include\9_AddBinary.h" />
+    <ClInclude Include="include\Common.h" />
   </ItemGroup>
   <ItemGroup>
     <None Include="config\10_BinaryTreePaths.ini" />
@@ -210,6 +214,7 @@
     <None Include="config\22_Rotate.ini" />
     <None Include="config\23_RestoreIpAddresses.ini" />
     <None Include="config\24_LengthOfLongestSubstring.ini" />
+    <None Include="config\25_Partition.ini" />
     <None Include="config\2_ExcelSheetColumnTiTle.ini" />
     <None Include="config\3_bool IsUgly.ini" />
     <None Include="config\4_IsPalindrome.ini" />
diff --git a/Alogrithm/Alogrithm/Alogrithm.vcxproj.filters b/Alogrithm/Alogrithm/Alogrithm.vcxproj.filters
index 08d2938..1adf8b7 100644
--- a/Alogrithm/Alogrithm/Alogrithm.vcxproj.filters
+++ b/Alogrithm/Alogrithm/Alogrithm.vcxproj.filters
@@ -99,6 +99,12 @@
     <ClCompile Include="src\24_LengthOfLongestSubstring.cpp">
       <Filter>源文件\src</Filter>
     </ClCompile>
+    <ClCompile Include="src\25_Partition.cpp">
+      <Filter>源文件\src</Filter>
+    </ClCompile>
+    <ClCompile Include="src\Common.cpp">
+      <Filter>源文件</Filter>
+    </ClCompile>
   </ItemGroup>
   <ItemGroup>
     <ClInclude Include="include\2_ExcelSheetColumnTitle.h">
@@ -173,6 +179,12 @@
     <ClInclude Include="include\24_LengthOfLongestSubstring.h">
       <Filter>头文件\include</Filter>
     </ClInclude>
+    <ClInclude Include="include\25_Partition.h">
+      <Filter>头文件\include</Filter>
+    </ClInclude>
+    <ClInclude Include="include\Common.h">
+      <Filter>头文件</Filter>
+    </ClInclude>
   </ItemGroup>
   <ItemGroup>
     <None Include="config\3_bool IsUgly.ini">
@@ -247,5 +259,8 @@
     <None Include="config\24_LengthOfLongestSubstring.ini">
       <Filter>资源文件\config</Filter>
     </None>
+    <None Include="config\25_Partition.ini">
+      <Filter>资源文件\config</Filter>
+    </None>
   </ItemGroup>
 </Project>
\ No newline at end of file
diff --git a/Alogrithm/Alogrithm/Alogrithm.vcxproj.user b/Alogrithm/Alogrithm/Alogrithm.vcxproj.user
index 88a5509..966b4ff 100644
--- a/Alogrithm/Alogrithm/Alogrithm.vcxproj.user
+++ b/Alogrithm/Alogrithm/Alogrithm.vcxproj.user
@@ -1,4 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project ToolsVersion="Current" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <PropertyGroup />
+  <PropertyGroup>
+    <ShowAllFiles>true</ShowAllFiles>
+  </PropertyGroup>
 </Project>
\ No newline at end of file
diff --git a/Alogrithm/Alogrithm/config/25_Partition.ini b/Alogrithm/Alogrithm/config/25_Partition.ini
new file mode 100644
index 0000000..35e0047
--- /dev/null
+++ b/Alogrithm/Alogrithm/config/25_Partition.ini
@@ -0,0 +1,28 @@
+[Test1]
+Input1=1,4,3,2,5,2
+Input2=3
+Output=1,2,2,4,3,5
+[Test2]
+Input1=1
+Input2=1
+Output=1
+[Test3]
+Input1=
+Input2=0
+Output=
+[Test4]
+Input1=1,2,3,4,5
+Input2=2
+Output=1,2,3,4,5
+[Test5]
+Input1=3,4,5,2,1,3,11111,234,45221,555,61
+Input2=255
+Output=3,4,5,2,1,3,234,61,11111,45221,555
+[Test6]
+Input1=2,2,2,2,2,2,2
+Input2=2
+Output=2,2,2,2,2,2,2
+[Test7]
+Input1=2021,2,1,15,16,31
+Input2=10
+Output=2,1,2021,15,16,31
\ No newline at end of file
diff --git a/Alogrithm/Alogrithm/include/25_Partition.h b/Alogrithm/Alogrithm/include/25_Partition.h
new file mode 100644
index 0000000..3af5263
--- /dev/null
+++ b/Alogrithm/Alogrithm/include/25_Partition.h
@@ -0,0 +1,9 @@
+#pragma once
+#include <stdlib.h>
+struct ListNode
+{
+	int val;
+	struct ListNode* next;
+};
+struct ListNode* Partition(struct ListNode* head, int x);
+void CreatListNode(int *arr, int len, struct ListNode* head);
\ No newline at end of file
diff --git a/Alogrithm/Alogrithm/include/Common.h b/Alogrithm/Alogrithm/include/Common.h
new file mode 100644
index 0000000..26ab26d
--- /dev/null
+++ b/Alogrithm/Alogrithm/include/Common.h
@@ -0,0 +1,6 @@
+#pragma once
+#include <string.h>
+#include <stdlib.h>
+#include <stdio.h>
+char* GetAuthor();
+char* GetLanguage();
\ No newline at end of file
diff --git a/Alogrithm/Alogrithm/src/25_Partition.cpp b/Alogrithm/Alogrithm/src/25_Partition.cpp
new file mode 100644
index 0000000..5b72d04
--- /dev/null
+++ b/Alogrithm/Alogrithm/src/25_Partition.cpp
@@ -0,0 +1,39 @@
+#include "../include/25_Partition.h"
+#include <stdio.h>
+//��Ŀ������һ��������һ���ض�ֵ x�����������зָ���ʹ������С�� x �Ľڵ�
+//		���ڴ��ڻ���� x �Ľڵ�֮ǰ����Ӧ����������������ÿ���ڵ�ij�ʼ���λ�á�
+//˼·��������������,�ҵ�ÿ���ڵ��val���ض�ֵx�Ƚ�
+//		����һ��large������������ض�ֵx��Ľڵ㣻����һ��small������������ض�ֵxС�Ľڵ�
+//		�������Ժ��large�����ӵ�small�����ĺ��棬����small������������Ҫ�Ľ��
+
+struct ListNode* Partition( struct ListNode* head, int x) {
+	struct ListNode* small = (struct ListNode*)malloc(sizeof(struct ListNode));
+	struct ListNode* large = (struct ListNode*)malloc(sizeof(struct ListNode));
+	struct ListNode* smallHead = small;	//����small������ͷ���
+	struct ListNode* largeHead = large;	//����large������ͷ���
+	while (NULL != head) {				//����head����
+		if (head->val < x) {			//�ѵ�ǰ�ڵ��ֵ�ó�����x���Ƚ�,���С��x��
+			small->next = head;			//�ѵ�ǰ�ڵ����ӵ�small������
+			small = small->next;		//small����ָ����һ���ڵ㣬Ϊ������һ���ڵ���׼��
+		}
+		else {							//�������x
+			large->next = head;			//�ѵ�ǰ�ڵ����ӵ�large������
+			large = large->next;		//small����ָ����һ���ڵ㣬Ϊ������һ���ڵ���׼��
+		}
+		head = head->next;				//ָ����һ���ڵ�
+	}
+	large->next = NULL;					
+	small->next = largeHead->next;		//��large�������ӵ�small��������
+	return smallHead->next;				//����small����
+}
+//�������飬�������ڵ㸳ֵ
+void CreatListNode(int *arr, int len, struct ListNode* head) {
+	head->val = arr[0];
+	for (int i = 1; i < len; i++) {
+		head->next = (struct ListNode*)malloc(sizeof(struct ListNode));
+		head = head->next;
+		head->val = arr[i];
+	}
+	head->next = NULL;
+
+}
\ No newline at end of file
diff --git a/Alogrithm/Alogrithm/src/Common.cpp b/Alogrithm/Alogrithm/src/Common.cpp
new file mode 100644
index 0000000..278377d
--- /dev/null
+++ b/Alogrithm/Alogrithm/src/Common.cpp
@@ -0,0 +1,11 @@
+#include "../include/Common.h"
+
+char* GetAuthor() {
+	char* Author = (char*)malloc(sizeof(char)*10);
+	Author = "Author:������";
+	return Author;
+}
+char* GetLanguage() {
+	static char Language[] = "Language:C����";
+	return Language;
+}
\ No newline at end of file
diff --git a/Alogrithm/Alogrithm/src/main.cpp b/Alogrithm/Alogrithm/src/main.cpp
index dca5417..80e0845 100644
--- a/Alogrithm/Alogrithm/src/main.cpp
+++ b/Alogrithm/Alogrithm/src/main.cpp
@@ -1,9 +1,10 @@
-#include<stdio.h>
-#include"../include/24_LengthOfLongestSubstring.h"
-
+#include "../include/Common.h"
+#include <stdio.h>
 int main()
 {
-	char s[] = "lyj18391569527@163.com";
-	printf("%d\n", LengthOfLongestSubstring(s));
-	
+	char *Language = GetLanguage();
+	char* Author = GetAuthor();
+	printf("%*s\n", 40,Author);
+	printf("%*s\n", 40,Language);
+
 }
diff --git a/Alogrithm/UnitTest/UnitTest.cpp b/Alogrithm/UnitTest/UnitTest.cpp
index f1acc43..613d2e2 100644
--- a/Alogrithm/UnitTest/UnitTest.cpp
+++ b/Alogrithm/UnitTest/UnitTest.cpp
@@ -26,7 +26,7 @@ using namespace Microsoft::VisualStudio::CppUnitTestFramework;
 #define FileName_22 "../Alogrithm/config/22_Rotate.ini"
 #define FileName_23 "../Alogrithm/config/23_RestoreIpAddresses.ini"
 #define FileName_24 "../Alogrithm/config/24_LengthOfLongestSubstring.ini"
-
+#define FileName_25 "../Alogrithm/config/25_Partition.ini"
 
 
 
@@ -481,4 +481,31 @@ namespace UnitTest
 			}
 		}
 	};
+	TEST_CLASS(UnitTest_25)
+	{
+		TEST_METHOD(TestMethode1)
+		{
+			char Section_Name[100][10] = { 0 };
+			int  Section_Count = CalcCount(100, Section_Name, FileName_25);
+			int input_count = 0, output_count = 0, returnSize = 0;
+			int* input_value;
+			int* output_value;
+			CString input1, input2,output;
+			for (int i = 0; i < Section_Count; i++) {
+				GetPrivateProfileString(Section_Name[i], "Input1", " ", input1.GetBuffer(200), 200, FileName_25);
+				GetPrivateProfileString(Section_Name[i], "Input2", " ", input2.GetBuffer(20), 20, FileName_25);
+				GetPrivateProfileString(Section_Name[i], "Output", " ", output.GetBuffer(200), 200, FileName_25);
+				input_value = str_device(input1, &input_count);
+				output_value = str_device(output, &output_count);
+				struct ListNode* head = (struct ListNode*)malloc(sizeof(struct ListNode));
+				CreatListNode(input_value,input_count,head);
+				struct ListNode* returnHead = Partition(head, atoi(input2));
+				Assert::AreEqual(input_count, output_count);
+				for (int i = 0; i < input_count; i++) {
+					Assert::AreEqual(returnHead->val, output_value[i]);
+					returnHead = returnHead->next;
+				}
+			}
+		}
+	};
 }
diff --git a/Alogrithm/UnitTest/pch.h b/Alogrithm/UnitTest/pch.h
index dbe2c0c..7700db7 100644
--- a/Alogrithm/UnitTest/pch.h
+++ b/Alogrithm/UnitTest/pch.h
@@ -37,6 +37,7 @@
 #include"../Alogrithm/include/22_Rotate.h"
 #include"../Alogrithm/include/23_RestoreIpAddresses.h"
 #include"../Alogrithm/include/24_LengthOfLongestSubstring.h"
+#include"../Alogrithm/include/25_Partition.h"
 
 
 int CalcCount(int n, char(*str)[10],const char *FileName);