搜索使用堆栈自然解决的简单问题

时间:2017-05-08 06:02:26

标签: haskell data-structures stack recursive-datastructures

我想知道使用通常界面的堆栈(emptySisEmptySpushpop,{{1}可以自然解决的简单问题}})。

与问题的上下文相关的复杂性应该是空的。此刻我无法触及解析,编译或搜索算法等主题。这丢弃了许多经典的例子。

到目前为止,我发现的最漂亮的例子是检查字符串中的平衡括号。在很少的行中,没有任何其他背景,练习显示了数据结构的实用性:

另一个很好的例子是处理一个字符串,其中星号表示从堆栈中弹出一个项目,而字母表示将其推入堆栈。在将字符串中描述的操作应用于空堆栈之后,该函数必须返回堆栈。

如果你可以分享其他一些问题,我会非常感激。

提前谢谢。

1 个答案:

答案 0 :(得分:2)

虽然这个问题过于宽泛,但我还是会给出其他一些应用。其他一些常见的应用是 -

  1. 解析
  2. 递归函数
  3. 调用功能
  4. 表达评估
  5. 表达式转换
    • 中缀到Postfix
    • 中缀到前缀
    • Postix to Infix
    • Infix的前缀
  6. 河内的塔楼
  7. 可以找到一些详细信息here