您的位置:首页 > 数据库 > SQL

mysqldump:Couldn't execute 'SET OPTION SQL_QUOTE_SHOW_CREATE=1'问题

2014-12-31 11:43 495 查看



[title3] [/title3]

[b]实验内容


[title3] [/title3]

[title3][问题描述][/title3]

[title3] 试写一个算法,判断依次读入的一个以@为结束符的字母序列,是否为形如‘序列1&序列2’模式的字符序列。其中序列1和序列2中都不含字符‘&’,且序列2是序列1的逆序列。例如,‘a+b&b+a’是属该模式的字符序列,而‘1+3&3-1’则不是。[/title3]

[title3][基本要求][/title3]

[title3] 对于键盘输入的任意一个字符串,将其进行逆置,判断原串和逆置的串是否完全一致,完全一致则为回文,因此分别利用队列的先进先出(FIFO)和栈的后进先出(FILO)实现,算法只能使用一个栈和一个队列以及若干简单类型变量,算法时间复杂度应为O(n)。[/title3]

【代码】

#include<iostream>
#include<stack>
#include<queue>
using namespace std;
bool palindrome();
int main()
{
cout<<"请输入字符串(以@结束,中间部分以&分开)"<<endl;
if(palindrome()==true)
{
cout<<"是回文。";
}
else
{
cout<<"不是回文。";
}
system("pause");
}
bool palindrome()
{
stack<char> s;
queue<char> q;
char str;
while((str=getchar())!='@')
{
q.push(str);
s.push(str);
}
if(s.size()%2==0)
{
return false;
}
else
{
while(!s.empty() && !q.empty())
if(s.top()!=q.front())
return false;
else
return true;
}
}

[/b]

【运行结果】





注:以上内容仅供参考,如有问题欢迎指正
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: