栈应用实例:进制转换与回文判断

本实验将利用栈结构实现两个经典算法:

一、十进制数转换

目标:将输入的非负十进制整数转换为八进制和十六进制形式输出。

实现方法:

  1. 采用顺序栈存储转换过程中的余数。
  2. 将输入的十进制数不断除以目标进制数(8 或 16),并将余数压入栈中。
  3. 依次弹出栈中元素,拼接成最终结果。

二、回文判断

目标:判断一个字符串是否是回文,即正序和倒序读取结果相同。

实现方法:

  1. 利用链栈存储字符串的每个字符。
  2. 将字符串依次入栈。
  3. 依次出栈,并与原字符串进行比较。