要求:
输入一个带“&”的字符串,判断“&”前和“&”后部分是否为逆串。
思路:
依次读入字符串中的每个字符,当未读到“&”时,将每个读入的字符入栈保存。读入“&”后与栈顶字符比较,若相同,则出栈继续读下一个字符直到读取所有符号,否则不满足要求,停止读取。 阅读全文
输入一个带“&”的字符串,判断“&”前和“&”后部分是否为逆串。
依次读入字符串中的每个字符,当未读到“&”时,将每个读入的字符入栈保存。读入“&”后与栈顶字符比较,若相同,则出栈继续读下一个字符直到读取所有符号,否则不满足要求,停止读取。 阅读全文
用数组模拟队列时,我们为了避免数据移动及假溢出而使用循环队列,即当插入数据已经位于数组尾部的下一个位置时,若数组头部有空闲空间,则插入到数组头部;删除时,若删除的元素位于数组尾部,则删除后将队首头移动到数组的头部。为了区分队空还是队满,我们还需要使用一个空闲元素。 阅读全文
前面已经讨论过链式栈的实现。与链式栈不同,顺序栈通过数组来描述栈,在数据读取时间上相比于链式栈有一些优势。我们在实际应用时要视情况选择适合的实现方式来实现栈。 阅读全文
我们在 GCC/G++ 编译环境中有时会用到 bits/stdc++.h 头文件,也被称为“万能头文件”。这个头文件包含了所有 C++ 标准库,我们就不必一个一个将我们需要的头文件包含进来了,在各种竞赛的题解中也经常会看到它的身影。由于 Mac 下 Xcode 的编译器为 clang,默认不带这个头文件,所以若我们要在 Xcode 下使用它,就必须对 Xcode 进行一些修改。