本文共 1569 字,大约阅读时间需要 5 分钟。
在研发之余,将做工程过程中比较重要的一些内容备份一下,如下的内容内容是关于C# 自定义堆栈进行回文检测的内容,希望对各朋友也有用。
using System;
using System.Collections;namespace CStack
{ class Program { static void Main(string[] args) { CStack alist = new CStack();string ch; string word = "上海自来水来自海上"; bool isPalindrome = true; for (int x = 0; x < word.Length; x++) { alist.Push(word.Substring(x,1)); } int pos = 0; while (alist.Count > 0) { ch = alist.Pop().ToString(); if (ch !=word.Substring(pos,1)) { isPalindrome = false; break; } pos++; } Console.WriteLine(isPalindrome); } } public class CStack { private int p_index; private ArrayList list; public CStack() { list = new ArrayList(); p_index = -1; } public int Count { get { return list.Count; } } public void Push(object item) { list.Add(item); p_index++; } public object Pop() { if (0 > p_index) { return null; } object obj = list[p_index]; list.RemoveAt(p_index); p_index--; return obj; } public void Clear() { list.Clear(); p_index = -1; } public object Peek() { if (p_index < 0) { return null; } return list[p_index]; } }
}
转载于:https://blog.51cto.com/14101311/2325772