栈的应用有很多,四则运算是一个比较常见的应用。对于四则运算,括号内的要先运算,而且还要先乘除后加减,又要涉及到负数和浮点数,看上去简简单单的式子,其实暗藏杀机。 常用的方法是利用后缀表达式(逆波兰)进行计算。主要分为两步: (1)将中缀表达式转化为后缀表达式(栈用来进出运算的符号): 从左到右遍历中缀表达式的每一个数字和符号,若是数字就输出,既成为后缀表达...
分类:
其他好文 时间:
2014-07-16 17:32:59
阅读次数:
279
2.4 常量与变量
常量表示不能改变的数值。
Java中常量的分类:
1,整数常量。所有整数
2,小数常量。所有小数
3,布尔型常量。较为特有,只有两个数值。true false。
4,字符常量。将一个数字字母或者符号用单引号( ' ' )标识。
5,字符串常量。将一个或者多个字符用双引号标识。
6,null常量。只有一个数值就是:null.
对于整数:java有三种表现形式。...
分类:
编程语言 时间:
2014-07-16 17:32:27
阅读次数:
217
题意:
一串数字 问 有几种这样的组合(x,y,z)使得x>y>z或x
思路:
对于一个数字 比如 f 它计算出的ans值为
( beforef.lessthanf * afterf.biggerthanf )+( beforef.biggerthanf * afterf.lessthanf )
易知 beforef.biggerthanf = locationf - ...
分类:
其他好文 时间:
2014-07-16 17:25:35
阅读次数:
173
圆圈中最后剩下的数字(递推公式) 代码(C++)本文地址: http://blog.csdn.net/caroline_wendy题目: 0,1...,n-1这n个数字排成一个圆圈, 从数字0开始每次从这个圆圈里删除第m个数字.求出这个圆圈里最后剩下的数字.可以推导出约瑟夫环的递推公式, 使用循环进行求解, 时间复杂度O(n), 空间复杂度O(1).代码:/*
* main.cpp
*
*...
分类:
编程语言 时间:
2014-07-16 17:25:12
阅读次数:
206
题意:
你可以最多改变序列中的一个数字 求 序列最长的连续递增子串长度
思路:
首先可以把原串划分成单调递增的若干段子串 然后通过改变一个数字 看能拼出多长的串
首先对于一段 可以用他的长度更新答案 如果他旁边有别的串 那他至少可以占用别人的一个数字
其次如果是两个段拼接 需要考虑三种情况 即 .+---- 、 ----+. 、-----+----- 说白了就...
分类:
其他好文 时间:
2014-07-16 11:09:18
阅读次数:
208
1、可以利用数字的算数右移,然后利用0XFF这样的数字做掩码运算,可以获取到一个数字的符号位。计算机的移位运算有一种很重要的作用就是利用掩码运算去提取一个位模式的一段信息。
2、在C语言中的条件语句,以及三目的条件运算符,都可以用移位的方式来做。
3、在进行位扩展操作的时候,比较讲一个32位的有符号数扩展到64位,那么在保证原来的值不变的情况下,把31个低位扩展到64位的低位上,而最高的符号位...
分类:
移动开发 时间:
2014-07-16 10:29:32
阅读次数:
380
3//输入3个点,接着是3行,每行第一个数字m,然后m组数据,每组2个数字,表示跟第ith个点相连通的点的标号和该边的权值
2 2 4 3 5
2 1 2 3 6
2 1 2 2 2
2 2 4 3 5//第1个点和两个点连通。边(1,2),权值为4; 边(1,3),权值为5
2 1 2 3 6//第2个点和两个点连通。边(2,1),权值为2; 边(2,3),权值为6
2 1 2 2 2//第3...
分类:
其他好文 时间:
2014-07-15 12:23:27
阅读次数:
174
本文出自:http://blog.csdn.net/svitter
题意:在1~200,000个数中,取一段区间,然后在区间中找出最大的数和最小的数字,求这两个数字的差。
分析:按区间取值,很明显使用的线段树。区间大小取200000 * 4 = 8 * 10 ^5;
进行查询的时候,注意直接判断l, r 与mid的关系即可,一开始写的时候直接与tree[root]...
分类:
其他好文 时间:
2014-07-15 12:22:14
阅读次数:
268
#python100例1.py#题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多#少?a={}c=1foriinrange(1,5):forjinrange(1,5):forkinrange(1,5):if(i!=j,i!=k,j!=k):#print(i,j,k)a[c]=(i,j,k)c=c+1print(a)#把结果输入到字典a中,并用c记数。
分类:
编程语言 时间:
2014-07-15 11:43:48
阅读次数:
300
题目:C.DZYLovesSequences(LIS升级)题意:在n个数中,最多改变一个数字,并求能够达到的最长严格上升子序列(连续)长度分析:考虑第i个数,能否改变后拼接前后两个字串,并维护当前最大值状态:left[i]:表示以i为终点的最长严格上升子序列长度right[i]:表示以i为起点的最长..
分类:
其他好文 时间:
2014-07-15 11:30:54
阅读次数:
272