算法练习
ClarenceJohnson
实践是检验真理的唯一标准
展开
-
算数表达式(中缀表达式)转后缀表达式
算数表达式(中缀表达式)转后缀表达式 我们把平时所用的标准四则运算表达式,即“9+(3-1)*3+10/2"叫做中缀表达式。因为所有的运算符号都在两数字的中间,现在我们的问题就是中缀到后缀的转化。 **二叉树方法:**一般情况下,计算的方法就是按照计算优先级的等级,从高到低依次计算,上面举例中的计算顺序应该是先计算 (3-1) →\rightarrow→(3-1) * 3 $\ri......原创 2020-05-06 16:28:51 · 817 阅读 · 0 评论 -
查找输出素数
方法1:import java.util.Date;import java.util.HashSet;import java.util.Set;import java.util.TreeSet;/** * @author hanchen * @create 2019-03-20 15:58 */public class PrimeNUm { public static ...原创 2019-03-20 16:56:04 · 111 阅读 · 0 评论 -
散列冲突处理:开放定址法
设计得再好的散列函数也不可能完全避免冲突,这就像我们再健康也只能尽量预防疾病,但却无法保证永远不得病一样,既然冲突不能避免,就要考虑如何处理它。那么当我们在使用散列函数后发现两个关键字key1≠key2,但是却有f(key1) = f(key2),即有冲突时,怎么办呢?我们可以从生活中找寻思路。试想一下,当你观望很久很久,终于看上一套房打算要买了,正准备下订金,人家告诉你,这房子已经被人买走了...转载 2019-08-08 17:25:42 · 3105 阅读 · 0 评论 -
递归的学习:主定理
在算法分析中,主定理(英语:master theorem)提供了用渐近符号(大O符号)表示许多由分治法得到的递推关系式的方法。这种方法最初由Jon Bentlery,Dorothea Haken和James B. Saxe在1980年提出,在那里被描述为解决这种递推的“天下无敌法”(master method)。此方法经由经典算法教科书Cormen,Leiserson,Rivest和Stein的《...转载 2019-08-08 18:06:49 · 1454 阅读 · 0 评论 -
后缀表达式
后缀表达式,又称逆波兰式,指的是不包含括号,运算符放在两个运算对象的后面,所有的计算按运算符出现的顺序,严格从左向右进行(不再考虑运算符的优先规则)计算方法(官方): 建立一个栈S 。从左到右读表达式,如果读到操作数就将它压入栈S中,如果读到n元运算符(即需要参数个数为n的运算符)则取出由栈顶向下的n项按操作数运算,再将运算的结果代替原栈顶的n项,压入栈S中 。如果后缀表达式未读完,则重复上...转载 2019-08-07 19:32:09 · 3772 阅读 · 1 评论