
算法
luweicheng24
今日的低头为了明日更好的抬头
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
小米-基础算法-手写栈结构
实现一个栈,可以使用除了栈之外的数据结构eg:输入:push(1)pop()push(2)top() // return 2pop()isEmpty() // return truepush(3)isEmpty() // return false个人实现:public class Stack { private int initCapacity = 8; ...原创 2019-01-28 11:08:22 · 349 阅读 · 0 评论 -
小米-基础算法-最近公共祖先
给一棵二叉树和二叉树中的两个节点,找到这两个节点的最近公共祖先LCA。两个节点的最近公共祖先,是指两个节点的所有父亲节点中(包括这两个节点),离这两个节点最近的公共的节 点。每个节点除了左右儿子指针以外,还包含一个父亲指针parent,指向自己的父亲。实现:/** * Definition of ParentTreeNode: * * class ParentTreeNo...原创 2019-01-28 11:12:49 · 317 阅读 · 0 评论 -
小米-基础算法-二进制中有多少个1
计算在一个 32 位的整数的二进制表示中有多少个 1。eg:样例 1:输入:32输出:1解释:32(100000),返回 1。样例 2:输入:5输出:2解释:5(101),返回 2。实现:public class Solution { /* * @param num: An integer * @return: An integer ...原创 2019-01-28 11:15:31 · 231 阅读 · 0 评论 -
小米-基础算法-删除链表中倒数第n个节点
给定两个二进制字符串,返回他们的和(用二进制表示)eg :a = “11”b = “1”返回 “100”实现:public class Solution { /** * @param a: a number * @param b: a number * @return: the result */ public String ...原创 2019-01-28 11:18:58 · 147 阅读 · 0 评论 -
小米-基础算法-平衡二叉树
给定一个二叉树,确定它是高度平衡的。对于这个问题,一棵高度平衡的二叉树的定义是:一棵二叉树中每个节点的两个子树的深度相差不会超过1。样例样例 1:输入: tree = {1,2,3}输出: true样例解释:如下,是一个平衡的二叉树。 1 / \ 2 3样例 2:输入: tree = {3,9,20,#,#,15,7}输...原创 2019-01-31 10:41:46 · 199 阅读 · 0 评论 -
算法——翻转字符串II
描述给定输入的字符数组,逐词翻转数组。单词被定义为不包含空格的字符串.输入字符数组不包含前导或尾部空格,单词总是用单个空格分隔。样例给定 s = “the sky is blue”,翻转之后 : “blue is sky the”挑战你能在不分配额外空间的情况下原地解决这个问题吗?实现:public class Solution { /** * @param...原创 2019-02-22 20:44:25 · 233 阅读 · 0 评论 -
算法——山脉序列中的最大值
描述给 n 个整数的山脉数组,即先增后减的序列,找到山顶(最大值)您在真实的面试中是否遇到过这个题?样例例1:输入: nums = [1, 2, 4, 8, 6, 3]输出: 8例2:输入: nums = [10, 9, 8, 7],输出: 10实现:public class Solution { /** * @param nums: a mountai...原创 2019-02-22 20:46:43 · 683 阅读 · 0 评论 -
算法—— 最近公共祖先 III
给一棵二叉树和二叉树中的两个节点,找到这两个节点的最近公共祖先LCA。两个节点的最近公共祖先,是指两个节点的所有父亲节点中(包括这两个节点),离这两个节点最近的公共的节点。返回 null 如果两个节点在这棵树上不存在最近公共祖先的话。样例样例1输入:{4, 3, 7, #, #, 5, 6}3 55 66 75 8输出:477null解释:4/ \3 ...原创 2019-02-22 20:51:07 · 245 阅读 · 0 评论 -
动态规划-解决公共字符串
动态规划个人理解:动态规划就是记住已经解决过的子问题的解,大问题可以由子问题构成,所有问题的最优解也是子问题的最优解构成,下面通过几个案例来了解一下:先来理解子序列和子串的区别-最长公共子序列分析:比较连个字符串的公共子串,可以以任意一个串作为基串,从该串的第一个字符开始与第二个串比较求出最优解,循环求出最后一个字符时对应的最优解: public static int ma...原创 2019-03-21 14:06:54 · 338 阅读 · 0 评论