- 博客(7)
- 资源 (2)
- 收藏
- 关注
原创 python基础及实现词法分析器的基本实现
python基础:1、list的使用,即列表。定义:list(列表名) = [];如下还有对他的遍历,这里的word算是定义了一个变量去存储res[i]的值:# -*- coding: cp936 -*-if __name__=="__main__": res = [] res = ["hello", "you", "are", "good"] i = 0#对列表...
2018-05-24 21:22:35 14118 4
原创 图的基本概念及存储结构
图的基本概念:定义:图(Graph)是由顶点的有穷非空集合和顶点之间边的集合组成,通常表示为:G(V,E),其中,G表示一个图,V(vertex)是图G中顶点的集合,E(edge)是图G中边的集合。分类:1、按有无方向分类:有向图和无向图。无向图由顶点和边组成,有向图由顶点和弧组成, 弧有弧头(head)和弧尾(tail)两部分。2、如果任意的两个顶点之间都存在边,叫完全图;有向的图叫有向完全图。...
2018-05-22 16:42:17 1851
原创 前缀、中缀、后缀表达式及中缀转后缀表达式
前缀表达式:不含括号的算术表达式,而且是将运算符写在前面,操作数写在后面的表达式。求法:首先从右往左扫描表达式,从右边第一个字符判断,如果当前字符是数字,则一直到字符串的末尾再记录下来;如果是运算符,则将右边最近的两个数字串做相应的运算,以此作为一个新串并记录下来。一直扫描到最左端停止。例子:(a + b)* (c + d) : *+ab+cd。理解:根据优先级,把数字位置不同,有那两个可以做运...
2018-05-19 23:38:26 4499 1
原创 查找(一)-----顺序表的顺序查找和折半查找
顺序表的顺序查找:基于顺序表,查找指定的key元素, 给出三种:返回它的索引值(否则返回-1), 判断是否存在这个值(存在返回true, 否则false),查找(存在返回这个元素的值, 不存在返回-1)。就是对这个顺序表进行遍历。从第一个元素开始和指定的元素做比较。参考代码:public class SeqSearch<T> { public static void main(St...
2018-05-16 11:13:51 15929 1
原创 hashcode和equals
hash算法简介:举例,假如有一个集合,让你查找这个集合中是否包含某个元素?常规的就是遍历这个集合,集合中的元素equals(指定元素时, 则返回true, 否则返回false。但是当这个集合很大呢?有几万个,甚至几十万个元素呢?这时遍历显然效率极低。所以有人发明了哈希算法,将这个集合分成若干个区域, 每个区域可以看成一个桶,对应的是一个哈希码,对象是根据它的计算出的哈希码存入对应的区域,所以查找...
2018-05-09 20:25:12 137
原创 矩阵的转置和旋转
转置:转置很简单的,就是a[i][j] -- > a[j][i]即可。可以开辟一个新的二维数组。b[i][j] = a[j][i]即可。例题:输入一个N*N的矩阵,将其转置后输出。要求:不得使用任何数组(就地逆置)。此时应该怎么办呢?只要根据题目要求,直接输出就可以啦!(解释一下,为什么我的输出部分要写成下面这样,把最后一列单独输出出来, 那是因为在大多数的oj上,运行通过的要求是最后一列输...
2018-05-07 21:23:01 5016
原创 快速幂
这里介绍的是求a^b的运算。常规思路:b个a相乘。int pow(int a, int b){ int ans = 1; for(int i = 1; i <= b; i ++){ ans *= a; } return ans;} 但是当b很大时,复杂度很高,所以可以通过分奇偶来讨论。当b是奇数时, a^b = a ^ (b/2) * a^(b/2) * a;当b是偶数时,a^...
2018-05-02 17:52:24 124
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人