牛小飞《数据结构》3.5栈.pptVIP

  • 8
  • 0
  • 约7.19千字
  • 约 52页
  • 2017-05-30 发布于浙江
  • 举报
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * n 3 fact ??? n 3 ret 3 ? n 1 ret 2 ? sp sp sp n 2 ret 2 ? sp factorial(3) return 3*2 factorial(2) return 2*1 factorial(1) rerutn 1 6 1 6 2 int factorial(n){ 1 if(n == 1) return 1; 2 return n*factorial(n-1); } 平衡符号(括号匹配) 问题: 在程序语言的语法检查阶段,涉及到的语法错误,如括号的匹配,即:有一个左括号,就要有一个右括号,左括号和右括号要成对出现。即[( )]是合法的,而[( ])或[(( ))或 (( )) ]是非法的。 则 检验括号是否匹配的方法可用 “期待的急迫程度”这个概念来描述。 分析可能出现的不匹配的情况: 到来的右括弧非是所“期待”的;如[( ]) 例如:考虑下列括号序列: [ ( [ ] [ ] ) ] 1 2 3 4 5 6 7 8 到来的是“不速之客”;如 ((

文档评论(0)

1亿VIP精品文档

相关文档