检查“()”是否匹配并返回深度
bool checkArr(char * arr, int len, int* max) { if (NULL == arr || len == 0 || max == NULL) { return false; } int maxdepth = 0, deep = 0; for (int i = 0; i < len; i++) { char tmp = arr[i]; if (tmp == '(') { deep++; } else if (tmp == ')') { deep--; } maxdepth = deep > maxdepth ? deep : maxdepth; } *max = maxdepth; if (deep == 0) { return true; //deep长度是0,表示匹配; } return false; }
青青园中葵,朝露待日晞。
阳春布德泽,万物生光辉。
常恐秋节至,焜黄华叶衰。
百川东到海,何时复西归?
少壮不努力,老大徒伤悲!