算法
TomCat。。。
这个作者很懒,什么都没留下…
展开
-
2021 8.8拼多多笔试第三题解答
第三题输出括号匹配 输入包含 ”( ) L R D “题目以后补充。。。。import java.util.Arrays;import java.util.Scanner;import java.util.Stack;public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int n = sc.nextInt(); sc.nextLi..原创 2021-08-09 16:59:22 · 564 阅读 · 0 评论 -
关于数组中最大数对和的最小值问题贪心算法的数学证明
https://leetcode-cn.com/problems/minimize-maximum-pair-sum-in-array/ 附上贪心算法的证明Java代码如下class Solution { public int minPairSum(int[] nums) { Arrays.sort(nums); int n = nums.length; int res = 0; for(int...原创 2021-07-20 21:48:28 · 137 阅读 · 0 评论 -
堆排序 大堆顶和小堆顶以及二叉树的性质
满二叉树一个二叉树,如果每一个层的结点数都达到最大值,则这个二叉树就是满二叉树。也就是说,如果一个二叉树的层数为k,且结点总数是() -1 ,则它就是满二叉树。如下图所示例子:完全二叉树 完全二叉树的结点数是任意的,从形式上讲它是个缺失的的三角形,但所缺失的部分一定是右下角某个连续的部分,最后那一行可能不是完整的,对于k层的完全二叉树,结点数的范围排序过程参考:https://www.jianshu.com/p/e3cd6b9cde81//htt...原创 2021-07-13 16:46:32 · 370 阅读 · 0 评论 -
Leecode中关于子数组滑窗问题
和可被 K 整除的子数组此题使用有同余定理,但是需要对负数取模换算,详见:https://blog.csdn.net/ChenTianyu666/article/details/106345341Java中 %为取余(rem),Math.floorMod()为取模(mod)Leetcode 523,560,974,525,1124,528,497,1248,930 以及 区域和检索系列的问题...原创 2021-07-09 16:03:54 · 85 阅读 · 0 评论 -
二叉树三种遍历顺序
三.二叉树的三种遍历方式1.先序遍历:按照根节点->左子树->右子树的顺序访问二叉树先序遍历:(1)访问根节点;(2)采用先序递归遍历左子树;(3)采用先序递归遍历右子树;(注:每个节点的分支都遵循上述的访问顺序,体现“递归调用”)先序遍历结果:A BDFE CGHI思维过程:(1)先访问根节点A,(2)A分为左右两个子树,因为是递归调用,所以左子树也遵循“先根节点-再左-再右”的顺序,所以访问B节点,(3)然后访问D节点,(4)访问F节点的时候有分支.原创 2021-07-06 21:40:25 · 6257 阅读 · 0 评论 -
广度优先搜索算法
广度优先搜索算法(Breadth-First-Search)广度优先搜索算法(Breadth-First-Search),是一种图形搜索算法简单的说,BFS是从根节点开始,沿着树(图)的宽度遍历树(图)的节点。如果所有节点均被访问,则算法中止。BFS同样属于盲目搜索。一般用队列数据结构来辅助实现BFS算法。算法步骤:首先将根节点放入队列中。 从队列中取出第一个节点,并检验它是否为目标。如果找到目标,则结束搜寻并回传结果。否则将它所有尚未检验过的直接子节点加入队列中。 若队列为转载 2021-06-15 13:44:53 · 278 阅读 · 0 评论 -
深度优先搜索Or深度优先遍历详解
学习过程中发现这篇文章写得特别好,立转深度优先搜索(DFS, Depth First Search)是一个针对图和树的遍历算法。早在19世纪就被用于解决迷宫问题。对于下面的树而言,DFS方法首先从根节点1开始,其搜索节点顺序是1,2,3,4,5,6,7,8(假定左分枝和右分枝中优先选择左分枝)。DFS的实现方式相比于BFS应该说大同小异,只是把queue换成了stack而已,stack具有后进先出LIFO(Last Input First Output)的特性,DFS的操作步骤如下:1...原创 2021-06-15 13:36:06 · 624 阅读 · 1 评论