Iri*_*ain 3 c# asp.net arrays string
鉴于以下内容:
protected bool IsPalindrome(uint x) // Samples: 1221, 456653
{
}
Run Code Online (Sandbox Code Playgroud)
确定输入是否为回文的最佳方法是什么?最初,我通过将输入数字放入一个数组,在for循环中将其反转并将其分配给临时数组进行比较来尝试数组.然而索引语法变得非常快,所以我决定简单地将uint视为字符串.
以下是面试白板情况下的有效解决方案,还是我仍然过于复杂?
protected bool IsPalindrome(uint x)
{
string givenNum = Convert.ToString(x);
char[] input = givenNum.ToCharArray();
Array.Reverse(input);
string testString = String.Empty;
foreach (char a in input)
testString += a;
if (givenNum == testString)
return true;
else
return false;
}
Run Code Online (Sandbox Code Playgroud)
将数字转换为字符串,如果该字符串等于其反向,则它是一个回文:
protected bool IsPalindrome(uint x) {
string test = x.ToString();
string tset = new string(test.ToCharArray().Reverse().ToArray());
return test == tset;
}
Run Code Online (Sandbox Code Playgroud)