顺序栈和链队的基本操作就不再一一列举了,要想实现回文判断,先来了解什么是回文?“回文”一字符串正着读和反着读是相同的字符序列,如“abcba”,"abba"为"回文",“abab”则不是“回文”。
        其次就是顺序栈和链队如何实现回文的判断?将输入的字符串依次入栈和入队,然后再依次出栈和出队,由于入栈和入队是相同的序列,然而出栈和出队是相反的序列,这就实现了回文的判断。
     ...
                            
                            
                                分类:
其他好文   时间:
2015-04-17 22:25:05   
                                阅读次数:
149
                             
                    
                        
                            
                            
                                top可以用来表示下标。top为-1表示栈空,其他情况top表示栈顶元素的下标1 typedef int SElemType;2 struct SqStack{3 SElemType *base;4 int top;5 int stacksize;6 };
                            
                            
                                分类:
其他好文   时间:
2015-04-15 13:13:42   
                                阅读次数:
132
                             
                    
                        
                            
                            
                                循环队列是队列的一种顺序表示和实现的方法。与顺序栈类似,在队列的顺序存储结构中,用一组地址连续的存储单元依次存放从队头到队尾的元素,如一维数组Queue[MAXSIZE]。此外,由于队列中队头和队尾的位置都是动态变化的,因此需要附设俩个指针front和rear,分别指示队头元素和为元素在数组中的位置...
                            
                            
                                分类:
其他好文   时间:
2015-04-01 19:40:28   
                                阅读次数:
199
                             
                    
                        
                            
                            
                                1 #include 2 #define STACKSIZE 50/*设栈中元素个数为50个*/ 3 using namespace std; 4 5 struct SeqStack 6 { 7 int elem[STACKSIZE]; 8 int top; ...
                            
                            
                                分类:
编程语言   时间:
2015-03-30 20:51:10   
                                阅读次数:
202
                             
                    
                        
                            
                            
                                在写链栈的时候 和 顺序栈一样 犯了两个错误: 一个是 在 入栈 和 进栈顶时候 忘记 操作 linkstack.len 了,另一个是 在写 stackClear 的时候 犯了一个 低级的内存错误。
这两个问题 都是 粗心造成的。
希望 引以为戒。
上代码:
// LinkStack.cpp : 定义控制台应用程序的入口点。
//
#include "stdafx.h"
#includ...
                            
                            
                                分类:
其他好文   时间:
2015-03-02 14:57:13   
                                阅读次数:
159
                             
                    
                        
                            
                            
                                欢迎指出 代码 不足之处
在写顺序栈的时候 犯了两个错误,:一个是 对栈的 认识不够清楚,栈顶指针的下一个位置为栈顶元素; 另一个是粗心,在用 realloc 分配内存的时候,忽略了元素本身的大小,只写了 元素的个数。 希望引以为戒。
上代码:
// SqStack.cpp : 定义控制台应用程序的入口点。
//
#include "stdafx.h"
#include 
#include...
                            
                            
                                分类:
其他好文   时间:
2015-03-02 09:41:10   
                                阅读次数:
194
                             
                    
                        
                            
                            
                                #include 
#include 
#include 
typedef struct SeqStack
{
	int length;
	int top;
	char *data;
}seqstack;
seqstack* CreatStack(seqstack *s,int n)
{
	s=(seqstack *)malloc(sizeof(seqstack)+n*sizeof(char))...
                            
                            
                                分类:
其他好文   时间:
2015-02-10 15:22:12   
                                阅读次数:
159
                             
                    
                        
                            
                            
                                /* 用一片连续的存储空间来存储队列中的数据元素,这样的队列称为顺序队列 (Sequence Queue)。类似于顺序栈,在这里我就不做介绍了,我们直接用列表实现一个队列 */using System;using System.Collections.Generic;using System.Lin...
                            
                            
                         
                    
                        
                            
                            
                                这是严蔚敏吴伟民版本的算法,感觉没《大话数据结构》里面的简单易懂这个版本里面的top指针指向下一个空单元格,这个其实是有些问题的,因为栈满的时候,top是指向栈外的,有些不安全。 1 #ifndef SQ_STACK_HEAD 2 #define SQ_STACK_HEAD 3 #include ....
                            
                            
                                分类:
其他好文   时间:
2015-01-15 09:19:26   
                                阅读次数:
116
                             
                    
                        
                            
                            
                                //顺序栈
public class OrderStack {
	//(1)置空栈
	void InitStack(SeqStack *S){
		S->top = -1;
	}
	
	//(2)判断栈空
	int StackEmpty(SeqStack *S){
		return S->top == -1;
	}
	
	//(3)判断栈满
	int StackFull(SeqStack *S){...
                            
                            
                                分类:
其他好文   时间:
2015-01-13 15:56:30   
                                阅读次数:
147