
算法
文章平均质量分 79
我还年轻我很平凡
想成为一个平凡的人结果发现自己就是一个平凡的人。
展开
-
Java实现中缀表达式转后缀表达式
文章目录一、中缀表达式转后缀表达式的方法二、实现代码 一、中缀表达式转后缀表达式的方法 此处偷一下懒,直接引用别人的思想总结,写的比较好哦! 中缀转后缀的三个基本方法(简单易懂) 二、实现代码 import java.util.*; /** * @Author 玛卡巴卡 * @Date 2020/11/7 0007 13:09 * @Dscription:使用上文链接中提到的第一个方法实现中缀表达式转后缀表达式, * 以下是几个关键点的总结: * 1.使用 Map 作为运算符的优先级集合;原创 2020-11-07 22:46:44 · 366 阅读 · 0 评论 -
从二叉树的先序和中序构建二叉树
对于二叉树,我们一般的遍历方式有先序遍历(preOrder),中序遍历(inOrder),后序遍历(afterOrder),层序遍历(levelOrder),每个遍历方式都有自己的特点(这个大家可以自行了解,很简单),下面我们就来看一下利用树的先序(后序)和中序遍历来构建二叉树 先序遍历的特点:数组的头一定是根节点,然后再从根结点向左向右遍历 中序遍历的特点:数组的头结点将数组分成两部分,左边为...原创 2019-09-04 00:00:18 · 497 阅读 · 0 评论 -
长度为n的数组按顺序进出栈总共有几种方式?
这是一道很经典的也比较常考的笔试选择题,别因为这么简单的一道题就让我们痛失两分。这个也不用推导,你就记着:这个题就是考catalen数(卡塔兰数),不了解的可以百度一下就解决了; 公式:C(n)=C(n-1)2(2n-1)/(n+1); 还有几种情况也符合catalen数: 1.凸n边形的三角划分;(当n=3时,只有一种划分方式); 2.n个节点组成的二叉搜索树的个数;(当n=1时,只有一种); ...原创 2019-08-17 16:54:32 · 550 阅读 · 0 评论 -
二分查找——不但可具体位置,也可查左边界或右边界
首先二分查找的时间复杂度都是O(logN)级别的,这就意味着在有序数组的查找中,如果没有提前直到下标,那么二分查找的效率是高于一次for循环的遍历的,所以这也就是为什么许多题都在考察二分查找。 1.简单二分查找 那么接下来,我们先来看看二分查找的最常用的场景:查一个有序数组的某一数字是否存在(下标): //target意为目标数字 public int searchNum(int target)...原创 2019-08-02 20:04:16 · 2090 阅读 · 2 评论