Problem Description
输入一行文本,如果遇到’[‘就会跳到最前面继续输入,如果遇到’]’就会跳到最后面继续输入
代码:数组模拟链表的后面插入
using namespace std;
char s[100005];//数据数组
int next[100005];//指向数组
int main()
{int i, last, cnr, len;while(~scanf("%s", s &#43; 1)){cnr &#61; last &#61; 0;len &#61; strlen(s &#43; 1);next[0] &#61; 0;for(i &#61; 1; i <&#61; len; i&#43;&#43;){if(s[i] &#61;&#61; &#39;[&#39;) cnr &#61; 0;else if(s[i] &#61;&#61; &#39;]&#39;) cnr &#61; last;else//核心&#xff0c;和前向星很相似的思维{next[i] &#61; next[cnr]; //记录上一个点的&#xff0c;的下一个的下标next[cnr] &#61; i;//上一个点指向这一个点if(cnr &#61;&#61; last) last &#61; i;cnr &#61; i;}}for(i &#61; next[0]; i !&#61; 0; i &#61; next[i])printf("%c", s[i]);printf("\n");}
}