首页 > 解决方案 > 验证所有支架都正确打开/关闭

问题描述

我正在尝试编写一个函数,如果括号关闭,则返回 true,例如{[()]},如果括号打开,则返回 false,例如) (。我在编写它背后的逻辑时遇到问题。我有一些像模数这样的想法,但它不起作用,我不知道该往哪个方向看。

function test($result) 
{
    if( $result % 2 === 0 ) { 
        return true;
    } else {
      return false;
    }
}

标签: php

解决方案


尝试使用堆栈数据结构。如果您找到一个开口支架,请将其推入堆栈。如果找到右括号,则从堆栈中弹出顶部元素。如果不是一个好的,例如第一个括号是),并且弹出的元素是[或者堆栈为空,则表达式无效。

重要提示:最后堆栈必须为空。


推荐阅读