个人简介

Echo Blog


江湖无名 安心练剑
  • 面试算法力扣96-二叉搜索树一共有多少种?
    题目 给定一个整数 n,求以 1 … n 为节点组成的二叉搜索树有多少种? 示例: 输入: 3 输出: 5 解释: 给定 n = 3, 一共有 5 种不同结构的二叉搜索树: 1 3 3 2 1 \ / / / \ \ 3 2 1 1 3 ...
    2020-06-08 07:13:08 | Algorithm
  • java 如何实现 binary search 二分查找法?
    顺序查找 如果让你在一堆书架上找到自己想要的书,你会怎么找呢? 实际上最简单最粗暴的方式就是一本一本的看过去。 这个用计算机实现就对应着顺序查找。 概念 顺序查找适合于存储结构为顺序存储或链接存储的线性表。 基本思想:顺序查找也称为线形查找,属于无序查找算法。从数据结构线形表的一端开始,顺序扫描,依次将扫描到的结点关键字与给定值k相比较,若相等则表示查找成功;若扫描结束仍没有...
    2020-06-08 07:13:08 | Algorithm
  • leecode 126 127-Word Ladder II-backtracking 回溯算法 + 剪枝 BFS DFS
    题目 127 word-ladder A transformation sequence from word beginWord to word endWord using a dictionary wordList is a sequence of words beginWord -> s1 -> s2 -> … -> sk such that: Ev...
    2020-06-08 07:13:08 | Algorithm
  • leecode 39 Combination Sum backtracking 回溯算法 + 剪枝
    缘起 一个不会解的问题 https://leetcode.com/problems/combination-sum/ 给定一个无重复元素的数组 candidates 和一个目标数 target ,找出 candidates 中所有可以使数字和为 target 的组合。 candidates 中的数字可以无限制重复被选取。 说明: 所有数字(包括 target)都是正整数。 解集...
    2020-06-08 07:13:08 | Algorithm
  • leecode 详解 03-Manacher Algorithm 马拉车算法
    Manacher’s Algorithm 马拉车算法。 马拉车算法 Manacher‘s Algorithm 是用来查找一个字符串的最长回文子串的线性方法,由一个叫Manacher的人在1975年发明的,这个方法的最大贡献是在于将时间复杂度提升到了线性。 解决奇偶的问题 首先我们解决下奇数和偶数的问题,在每个字符间插入”#”,并且为了使得扩展的过程中,到边界后自动结束,在两端分别插入 ...
    2020-06-08 07:13:08 | Algorithm
  • 【leetcode】81-recursive 递归 汉诺塔(Tower of Hanoi)
    chat 题目 汉诺塔(Tower of Hanoi)是一个经典的递归问题。问题描述是,有三个柱子和若干个盘子,初始状态下所有盘子按大小从小到大叠在第一个柱子上。目标是将所有盘子从第一个柱子移动到第三个柱子,但每次只能移动一个盘子,且大盘子不能放在小盘子上面。 解题思路 分解问题:假设有 ( n ) 个盘子在柱子 A 上,要将它们移动到柱子 C 上,可以分解为两个步骤: ...
    2020-06-08 07:13:08 | Algorithm
  • 【leetcode】80-recursive 递归
    chat 是什么? 递归算法是一种在计算机科学中非常常见的解决问题的方法,它通过函数调用自身来解决问题。 递归通常将复杂的问题分解成更小的子问题,通过逐步缩小问题规模直到满足某种条件(基准情况或边界条件)停止递归调用,从而得到解答。 递归的基本组成部分 一个典型的递归算法包含两个关键部分: 基准条件(Base Case):基准条件是递归算法停止递归的条件。它通常用于...
    2020-06-08 07:13:08 | Algorithm
  • 【leetcode】73-3195. 包含所有 1 的最小矩形面积 I
    题目 给你一个二维 二进制 数组 grid。请你找出一个边在水平方向和竖直方向上、面积 最小 的矩形,并且满足 grid 中所有的 1 都在矩形的内部。 返回这个矩形可能的 最小 面积。 示例 1: 输入: grid = [[0,1,0],[1,0,1]] 输出: 6 解释: 0 1 0 1 0 1 这个最小矩形的高度为 2,宽度为 3,因此面积为 2 * 3...
    2020-06-08 07:13:08 | Algorithm