早教吧作业答案频道 -->其他-->
写一个算法,判断依次读入的一个以@为结束符的字母序列,是否为形如“序列1&序列2”模式的字符序列.写一个算法,判断依次读入的一个以@为结束符的字母序列,是否为形如“序列1&序列2”模
题目详情
写一个算法,判断依次读入的一个以@为结束符的字母序列 ,是否为形如“序列1&序列2”模式的字符序列.
写一个算法,判断依次读入的一个以@为结束符的字母序列
,是否为形如“序列1&序列2”模式的字符序列.其中序列1和
序列2都不含字符&,且序列是序列1的逆序列.例如,a+b&b+a
是属于该模式的序列,而 1+3&3-1则不是.要求写清个语句的含义 基本思路最好配图示 最好用C++语言
急 用栈和队列实现算法 基本思路用图架解释 每条语句的含义 急
小弟真的无能为力
写一个算法,判断依次读入的一个以@为结束符的字母序列
,是否为形如“序列1&序列2”模式的字符序列.其中序列1和
序列2都不含字符&,且序列是序列1的逆序列.例如,a+b&b+a
是属于该模式的序列,而 1+3&3-1则不是.要求写清个语句的含义 基本思路最好配图示 最好用C++语言
急 用栈和队列实现算法 基本思路用图架解释 每条语句的含义 急
小弟真的无能为力
▼优质解答
答案和解析
假定读入的@为结束符的字符序列为S
用栈的实现:
int i=0;
// 先将‘&’前的字母入栈
while(S[i] != '\0' && S[i]!='&')
{
push_stack(S[i]);
i++;
}
// 如果字符串中 没有出现 ‘&’返回false
if (S[i]=='\0') return false;
i++;// i 定位到 & 后面第一个字符处
// 在出栈的过程中与 ' & ' 后面部分比较
while( S[i]!='\0' && !is_stack_empty() )
{
char c = pop_stack();
if (c == S[i]) i++;
else return false;
}
// 如果正好相同就返回true
if (S[i]=='\0' && is_stack_empty()) return true;
else return false;
用栈的实现:
int i=0;
// 先将‘&’前的字母入栈
while(S[i] != '\0' && S[i]!='&')
{
push_stack(S[i]);
i++;
}
// 如果字符串中 没有出现 ‘&’返回false
if (S[i]=='\0') return false;
i++;// i 定位到 & 后面第一个字符处
// 在出栈的过程中与 ' & ' 后面部分比较
while( S[i]!='\0' && !is_stack_empty() )
{
char c = pop_stack();
if (c == S[i]) i++;
else return false;
}
// 如果正好相同就返回true
if (S[i]=='\0' && is_stack_empty()) return true;
else return false;
看了 写一个算法,判断依次读入的一...的网友还看了以下:
根据所给算式,列出综合算式(1)15-10=530×5=150150÷5=30综合算式为:(2)3 2020-04-07 …
(11)小学五年级数学题5分之3吨大豆可以炸油8分之3吨.1吨大豆可以炸油()吨,炸1吨油需要() 2020-04-15 …
对于数列,定义为数列的一阶差分数列,其中;对,定义为的阶差分数列,其中.(1)若数列的通项公式为, 2020-05-13 …
等差数列{an}的前三项分别是a 1,2a,a 3,则该数列的通项公式为等差数列{an}的前三项分 2020-05-17 …
阅读下列材料:因为(x+3)(x-4)=X2-X-12,当x=4时,多项式x2-x-12的值为0. 2020-05-22 …
你能把你怎么解这个方程的式子列给我看吗? 2020-05-23 …
1.数列的通项公式为an=7n-2,这个数列是等差数列?说明理由2.如果等差数列{an}的第4项是 2020-06-04 …
当a取何值时,下列分式的值为0(a+1)(a-1)-15除以(a+3)(a-4)当m为何值时,下列 2020-06-04 …
1,10的3/8列式为()2,3/8的10倍列式为()3,10X3/5表示10个3/5是多少,这句 2020-06-11 …
已知四阶行列式的第1行元素为2,a,1,0其余子式分别为2,6,-2,b,第2行的各元素的代数余子 2020-06-18 …