先来看说一下思路


接下来就是写代码了
int StackOrder(SeqStack* stack, char* input, char* output, int size_input, int size_output)
{if(stack == NULL || input == NULL || output == NULL){return 0;}int i_input = 0;int j_output = 0;SeqStackType value;for(; j_output < size_output; j_output++){SeqStackPush(stack, input[i_input]);SeqStackGetFront(stack, &value);while(value == input[j_output]){SeqStackPop(stack);SeqStackGetFront(stack, &value);j_output++;}i_input++;}if(j_output == size_output){return 1;}return 0;
}
测试用例
void TestOrder()
{SeqStack stack;SeqStackInit(&stack);char* input = "12345";char* output = "12345";int ret = StackOrder(&stack, input,  output, strlen(input), strlen(output));printf("expected ret = 1, actual ret = %d\n", ret);
}int main()
{TestOrder();
}

        

判断字符串出栈合法性相关推荐

  1. 序列元素IT面试题——判断合法出栈序列

    本文纯属个人见解,是对前面学习的总结,如有描述不正确的地方还请高手指正~ 在技巧笔试口试上,我们常常会碰到这样一类题型,如给你一个入栈序列,然后再让你判断几个序列是否有可能为它的出栈序列,如: 入栈序 ...

  2. 数据结构:判断堆栈出栈序列是否有效

    描述:如果以序列"1,2,3,4"作为一个栈(初始为空)的输入,那么可得到输出序列"1,2,3,4"或"4,3,2,1"或"2,3 ...

  3. python字符串出栈方法_1.Python实现字符串反转的几种方法

    1.Python实现字符串反转的几种方法 题目: 在Python环境下用尽可能多的方法反转字符串,例如将s = "abcdef"反转成 "fedcba" 第一种 ...

  4. python字符串出栈方法_Python 实现字符串反转的9种方法

    在做leetcode的试题中,做到反转整数,就涉及到字符串反转,为了尽可能可以写出更多的方法,于是写下这篇文章 样例:如 a='123456789' 反转成 a='987654321' 第一种方法:使 ...

  5. python字符串出栈方法_python字符串常用方法

    1. isalnum() :判断字符串所有的字符都是字母或者数字.返回true和false In [1]: str1='jiangwei520' In [2]: str2='jiang wei' In ...

  6. 栈 - 关于出栈序列,判断合法的出栈序列

    文章目录 1 引例 2 做题方法 3 原因 3.1 选项D(4 3 1 2)的模拟 1 引例 (例)设栈的入栈序列是 1 2 3 4,则下列不可能是其出栈序列的是( ). A. 1 2 4 3 B. ...

  7. python字符串出栈方法_说说Python有几种字符串格式化?

    公众号新增加了一个栏目,就是每天给大家解答一道Python常见的面试题,反正每天不贪多,一天一题,正好合适,只希望这个面试栏目,给那些正在准备面试的同学,提供一点点帮助! 小猿会从最基础的面试题开始, ...

  8. xdoj判断堆栈出栈序列是否有效c++

    我在leetcode上写过类似的题,这个代码在xdoj上只能得***50***分,跪求各位大佬挑挑毛病. #include<stack> #include<iostream> ...

  9. 判断出栈顺序是否正确

    先说一下题目: 假设有一个栈S,每次我们可以把序列A(含N个元素)中的第一个元素移入栈S,也可以是从栈顶弹出一个元素放入出栈序列B.这 样,经过N次入栈和出栈操作后,我们可以得到一个出栈序列B. 现在 ...

最新文章

  1. 沃尔沃加入英伟达阵营 2021年开卖自动驾驶汽车
  2. Jupyter Notebook知识点
  3. Centos7 安装oracle数据库
  4. PostgreSQL 并行查询概述
  5. linux添加后门方法,超初级的linux后门制作方法
  6. c++遍历文件夹下的文件_算法面试|开发者必备|使用递归函数进行无限分类及文件夹遍历...
  7. 不可能不爱的 XCODE 9:最新功能详尽介绍
  8. WinPE系统对硬盘分区
  9. 简述轻量级与重量级(框架,应用,组件)
  10. 什么是天线阵列及天线阵列类型
  11. DeepFake检测论文汇总
  12. ssm物业管理系统的设计与实现毕业设计源码261632
  13. 基于蓝牙5(BTIoT-5)的物联网架构
  14. Vue.js 入门 :去哪儿网APP案例 学习记录
  15. NAACL2022信息抽取论文分类
  16. 项目经理的专业面试10条经验总结
  17. 一对一培训之视频免费分享-2018-03-19-第 04 阶段-部署-基础-环境
  18. # 行动、任务、项目概念区分
  19. Oracle中where后面加if,SQL:WHERE子句中的IF子句
  20. oracle查看多少表,oracle查看所有表及各表行数?

热门文章

  1. 用python下载辞典
  2. 根据DbSchema生成代码2
  3. 传128GB版iPad4售价为799/929美元
  4. java 中的流_Java中的流(IO
  5. java 李刚 pdf_Java数据库技术详解(李刚) PDF_源雷技术空间
  6. 用python做数据分析流程图_使用Pyecharts进行高级数据可视化
  7. windows搭建python开发环境方法_04 Windows下搭建 Python 开发环境 - Python 入门教程
  8. C学习杂记(六)%2.0f打印输出宽度
  9. icse ccf_ICSE的完整形式是什么?
  10. Java ClassLoader getPackage()方法与示例