c# leetcode 459. 重复的子字符串 (字符串)

江小白配雪碧:

入口刺喉,入腹难受,打嗝时身体翻江倒海 刺辣。就像爱情,失恋的时候难受,回忆的时候即后悔又恨不争气。最难受的就是四下无人的时候泪流满面是回忆却再也回不去。

 1、如果满足重复子串的条件的话  lenth%2==0

2、 StringBuilder 拼接 abc+abc+abc 与 S 的 abcabcabc 比较。

public static bool RepeatedSubstringPattern(string s)
		{
			// 判断鲁棒性
			if (s == null || s.Length <= 1)
			{
				return false;
			}
			int length = s.Length;
			// 循环判断
			for (int i = length / 2; i > 0; i--)
			{
				// 判断是否满足重复子串
				if (length % i == 0)
				{
					StringBuilder sb = new StringBuilder();
					// 得到重复子串的个数
					int c = length / i;
					String temp = s.Substring(0, i);
					for (int j = 0; j < c; j++)
					{
						// 利用StringBuilder 拼接
						sb.Append(temp);
					}
					if (sb.ToString().Equals(s))
					{
						return true;
					}
				}
			}
			return false; 
		}
		public static void Main(string[] args)
		{
			string str = "abcabcabc";
 			bool b= RepeatedSubstringPattern(str);
			Console.WriteLine(b);
			Console.ReadKey();
		}

参考:https://blog.csdn.net/qq_36387730/article/details/81661315 【转自】

猜你喜欢

转载自blog.csdn.net/us2019/article/details/86526450