1 堆栈 1.1 堆栈的概念 表达式求值问题 表达式 = 运算数 + 运算符号 不同的运算符号优先级不一样 一般地, 运算是见到运算符号进行运算, 但是在一般的表达式中, 运算符号前面的值我们能够知道, 但是后面的值不一定是当前运算符运算的值, 因此这个运算增加了很大的困难 中缀表达式: 运算符位于 ...
分类:
其他好文 时间:
2017-06-01 21:41:15
阅读次数:
226
以下内容引用自http://wiki.jikexueyuan.com/project/java/basic-operators.html: Java针对操控变量提供了一组丰富的运算符。可以将所有的Java运算符分为如下几组: 算术运算符 关系运算符 位运算符 逻辑运算符 赋值运算符 其他运算符 一、 ...
分类:
编程语言 时间:
2017-05-31 10:23:26
阅读次数:
243
总结--C++ primer 5 一、左值和右值(P121) 1. 概念 C++的表达式,要不然是右值,要不然是左值。 这两个名词继承与C语言,在C中是为了帮助记忆:左值可以位于赋值语句的左侧,右值则不能。在C++中,二者的区别没那么简单:当一个对象被用作右值的时候,用的是对象的值(内容);当对象被 ...
分类:
编程语言 时间:
2017-05-29 12:54:07
阅读次数:
188
对于一个给定的后缀表达式,(如果它是合法的) 注意:次算法是基于基本操作符是2元操作符且操作数为一位正整数! 其求值的基本思想是:对于给定的表达式进行遍历,假设遇到的是操作数就将其压入栈;假设遇到的是操作符,将栈顶的两个元素弹出,假设栈顶两个元素依次为a,b(a在上b在下),将次操作符应用于这两个栈 ...
分类:
其他好文 时间:
2017-05-27 20:44:26
阅读次数:
134
两种方法 捷径 eval(str) 关于eval()的说法,官方demo解释为:将字符串str当成有效的表达式来求值并返回计算结果。 实际上这是有局限的,例如处理多维字典就不行了 json 另一种专业的转换工具是json ...
分类:
编程语言 时间:
2017-05-27 13:34:43
阅读次数:
201
本章内容:使用<script>元素、嵌入脚本与外部脚本、文档模式对JavaScript的影响、考虑禁用JavaScript的场景。 1.<script>元素 向HTML页面中插入JavaScript的主要方法,就是使用<script>元素。HTML4.01为<script>定义了下列属性: asyn ...
分类:
编程语言 时间:
2017-05-25 00:00:18
阅读次数:
240
3238: [Ahoi2013]差异 Description Input 一行,一个字符串S 一行,一个字符串S Output 一行,一个整数,表示所求值 一行,一个整数,表示所求值 Sample Input cacao Sample Output 54 HINT 2<=N<=500000,S由小写 ...
分类:
编程语言 时间:
2017-05-24 15:56:42
阅读次数:
158
该题的思路非常明白就是将中缀表达式转换为后缀表达式。然后通过后缀表达式来求值。 class Solution { public: int calculate(string s) { vector<string> postorder; stack<char> ccache; stack<int> ic ...
分类:
其他好文 时间:
2017-05-24 13:44:03
阅读次数:
190
唉,刚刚用C++又又一次写了一个较完好的表达式求值程序,最后精简后程序还不到100行。这不经让我 想到了大一上学期刚学c语言时自己费了好大的劲,写了几百行并且功能还不是非常齐全(当时还不能计算有括号的表 达式)的简单计算器程序。刚把两个程序对照了一下。感触还是挺深的,同一时候也再一次体现了数据结构在 ...
分类:
编程语言 时间:
2017-05-24 09:53:30
阅读次数:
190
运算符优先级JavaScript中的运算符优先级是一套规则。该规则在计算表达式时控制运算符执行的顺序。具有较高优先级的运算符先于较低优先级的运算符执行。例如,乘法的执行先于加法。下表按从最高到最低的优先级列出JavaScript运算符。具有相同优先级的运算符按从左至右的顺序求值。 汇总表EDIT 下 ...
分类:
编程语言 时间:
2017-05-23 12:11:26
阅读次数:
245