算法:C语言实现》习题4.8—— 给定两个序列,判断第二个序列是否可以由第一个序列出栈得到
来源:互联网 发布:淘宝知识产权侵权申诉 编辑:程序博客网 时间:2024/05/16 00:47
《算法:C语言实现》 习题4.8
这里,为了简化问题,假设序列的每个元素都不一样。
#define N 10#include <stdio.h>int judge(char *s, char *d){char com[N] = {0};int end = 0;while(1){if(*d == '\0') //成功return 0;if(*s == NULL && com[end-1] != *d)//入栈序列为空并且栈顶元素不等于待比较元素,则失败,返回-1return -1;if(*d == *s){s = s + 1;d = d + 1;}else if(end > 0 && *d == com[end - 1]){d = d + 1;com[end] = 0;end --;}else if(*d != *s){if( end == 0 || (end > 0 && *d != com[end - 1]) ){com[end] = *s;end ++;s = s + 1;}}}return 0;}int main(int argc, char **argv){char source[N] = {0}, des[N] = {0};int i = 0;printf("请输入第一个字符串:\n");scanf("%s",source);while(i ++ < 10){printf("请输入待比较字符串:\n");scanf("%s",des);int tag = judge(source,des);if(tag == 0)printf("Exist\n");elseprintf("Not exitst\n");}return 0;}
- 算法:C语言实现》习题4.8—— 给定两个序列,判断第二个序列是否可以由第一个序列出栈得到
- 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序
- 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序。
- 判断给定序列是否是对应入栈序列的出栈序列(C++)
- 判断第二个序列是否为第一个序列的弹出顺序
- (hdu step 8.1.2)Train Problem I(站的基本应用——判断一个序列经过栈后是否能够得到第二个序列)
- 剑指offer题目描述 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序。
- 给定入栈序列判断给定出栈序列是否合法
- 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈序列对应的一
- 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈序列对应的一
- 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如序列12345是某栈的压入顺序,序列45321为该压栈序列对应弹出顺序。
- 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈序列对应的一
- 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈序列对应的一
- 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈序列对应的一
- 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈序列对应的一
- C++编程,判断给定序列是否为正确出栈序列
- 给定入栈序列,判断可能的出栈序列
- 给定入栈序列,判断出栈序列是否合法
- MonkeyRunner基本命令
- SQL篇
- 秒杀大部分公司的面试题,精心整理合集,值得收藏(javascript篇)
- 分页原理以及解决方式
- TCP_CORK解析
- 算法:C语言实现》习题4.8—— 给定两个序列,判断第二个序列是否可以由第一个序列出栈得到
- JAVASCRIPT实现的WEB页面跳转以及页面间传值方法
- iOS开发如何实现消息推送机制
- 使用PhoneGap开发Android程序小记
- HDU 1401 Solitaire(双向BFS)
- lds链接脚本***三篇博客
- 简单3D立体效果
- spring aop 捕获异常
- ubuntu更改主机名,修改IP地址