- 程序开始首先定义一系列长字符串,代码:
string arr = "a a a a c c b a a b c c b a d s f s f i w k i i k";
- 第二部,由于 arr 是字符串类型,这里还需定义一个字符数组,把上面的字符串放到数组里面去,但是不能全部搁一块放进去,需要把一串字符串分割开来,让它们成为数组里面的元素!这里用到了 Split()方法。代码:
string[] arr1 = arr.Split(' ');
- 后面本程序将会用到两种数据结构分别是栈和队列,这里说下两者的结构存储特点,栈是“先进后出”,队列是先进先出,我们可以通过循环把需要判断是否是回文字符串的字符分别放入栈和队列中,然后再用循环分别中两者中取出,如果两者一样,那么这对字符就是字符串!
- 代码:
string s ="";
string y = "";
for (int j = 0; j < arr1.Length; j++)
{
for (int i = 2; i < arr1.Length-j+1; i++)
{
for (int x=0;x<i;x++)
{
stack.Push(arr1[j+x]);
queue.Enqueue(arr1[j+x]);
}
while (stack