![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
文章平均质量分 53
蓝月心语
E-mail:liao20081228@126.com
展开
-
中缀表达式转后缀表达式与括号匹配
1、算法思想1.1中缀转后缀表达式:从左到右依次扫描每个元素 (1)如果是左括号,直接入栈; (2)如果是右括号,则将栈中左括号以及之上的元素依次出栈,如果出栈的元素不是左括号,则加入后缀表达式中(这里用队列来存储,也可以直接输出); (3)如果是其他运算符,如果该操作符优先级比栈顶元素高则直接入栈;否则,依次出栈,加入后缀表达式中,直到如果该操作符优先级比栈顶元素高或者栈空为止;将该元素入栈原创 2016-10-24 12:58:09 · 1787 阅读 · 0 评论 -
数据结构之字符串
1、串的主要操作计算串长、复制、比较、取子串、匹配2、代码#include<iostream> using namespace std; #define ok 1 #define error 0 #define yes 1 #define no 0 #define NULL 0 struct str //定义串,就是动态顺序表的定义 { char *ch; int le原创 2016-10-30 03:05:14 · 316 阅读 · 0 评论 -
n个元素全排列
1、算法描述(1)n个元素全排列,`先选择一个元素放在一个固定的位置,然后求剩余n-1个元素的全排列。接着选择第2个元素放在一个固定的位置,然后求剩余n-1个元素的全排列。n-1个元素的求法仍然按照(1)求。直到只剩下一个元素为止。2、代码#include<iostream> using namespace std;void perm(char str[], int k, int n,int &m)原创 2016-10-29 23:54:26 · 1849 阅读 · 0 评论 -
括号匹配
1、问题描述检验一个表达式中的小中大三种括号是否匹配,一对双引号和一对单引号中的内容视为字符,不检验。2、算法思想从左到右依次扫描每一个元素: (1)若为引号,向右找到下一个引号,从引号的下一个元素开始扫描 (2)若为左括号,进栈,扫描下一个元素; (3)若为右括号,出栈,若出栈的元素是配对的括号,扫描下一元素;若出栈失败或者出栈的不是配对的括号,则配对失败; (4)若为其他;跳过;3、代码原创 2016-10-27 00:03:14 · 251 阅读 · 0 评论 -
用两个栈模拟队列
1、算法思想由于队列先进先出,而栈后进先出,用两个栈就可以模拟队列操作就和一个队列等效 进队:如果栈1未满则直接进栈;如果栈1满了,栈2不为空,则队列满了;如果栈1满了,栈2为空,则将栈1 中所有元素倒入栈2中,然后元素进栈1 出队:如果栈2不为空则直接出栈;如果栈2为空,栈1也为空,则队空;如果栈2为空,栈1不为空,则将栈1 中所有元素倒入栈2中,然后栈2出栈。2、原创 2016-10-12 13:51:50 · 471 阅读 · 0 评论 -
数据结构中的问题与typedef
1. typedef的作用typedef的作用就是对已有的对象(包括但不限于基本数据类型、自定义的数据类型和对象等)起一个别名格式为typedef 原对象名 别名2. 严蔚敏《数据结构》中的结构体首先严蔚敏的《数据结构》采用的时类c代码,不光是c或者c++,比如传引用时c++中的,c中并没有。2.1 c中定义结构体的原本方式c中定义结构体的原本方式应该是(这里用定义单链表为例):struct Lin原创 2016-10-12 12:05:08 · 2838 阅读 · 6 评论 -
共享栈
1、算法思想两个栈共用一个存储空间,由于栈底不动,所以设置在数组的两端。2、代码#include<iostream> using namespace std; #define ok 1 #define no 0 #define error 0 #define yes 1 #define maxsize 50 struct sharestack//定义共享栈 { int data[maxsiz原创 2016-10-24 23:49:35 · 463 阅读 · 0 评论 -
数据结构之基本概念
版权声明:本文参考了严蔚敏的《数据结构》。未经作者允许,严禁用于商业出版,否则追究法律责任。网络转载请注明出处,这是对原创者的起码的尊重!!! 1 基本概念 数据:数据是信息的载体,是描述客观事物属性的数、字符、以及能被输出计算机并被计算机程序处理和识别的符号的集合 数据元素:数据的基本单位,数据项是数据的最小单位。 数据对象:具有相同性质的数据元素的集合。 数据类型:一个值...原创 2018-10-07 17:06:54 · 437 阅读 · 0 评论