算法
Mamba Mentality
高比广德,下比狭行
展开
-
Leetcode题解中级篇之树和图(10)中序遍历二叉树
题目:https://leetcode-cn.com/explore/interview/card/top-interview-questions-medium/32/trees-and-graphs/85/题目描述:给定一个二叉树,返回它的中序遍历。示例:输入: [1,null,2,3] 1 \ 2 / 3输出: [1,3,2]进...原创 2018-12-28 15:20:50 · 166 阅读 · 0 评论 -
Leetcode题解之其他(3)颠倒二进制位
题目:https://leetcode-cn.com/explore/interview/card/top-interview-questions-easy/26/others/66/题目描述:颠倒二进制位颠倒给定的 32 位无符号整数的二进制位。示例:输入: 43261596输出: 964176192解释: 43261596 的二进制表示形式为 000000101001...原创 2018-11-28 15:38:15 · 148 阅读 · 0 评论 -
Leetcode题解之其他(2)汉明距离
题目:https://leetcode-cn.com/explore/interview/card/top-interview-questions-easy/26/others/65/题目描述: 汉明距离两个整数之间的汉明距离指的是这两个数字对应二进制位不同的位置的数目。给出两个整数 x 和 y,计算它们之间的汉明距离。注意:0 ≤ x, y < 231.示例:...原创 2018-11-28 14:27:34 · 238 阅读 · 0 评论 -
Leetcode题解之其他(1)位1的个数
题目:https://leetcode-cn.com/explore/interview/card/top-interview-questions-easy/26/others/64/题目描述:编写一个函数,输入是一个无符号整数,返回其二进制表达式中数字位数为 ‘1’ 的个数(也被称为汉明重量)。示例 :输入: 11输出: 3解释: 整数 11 的二进制表示为 0000000...原创 2018-11-28 14:18:38 · 134 阅读 · 0 评论 -
Centos 7 下安装MySQL 5.7(yum方式)
相信对于第一次接触Linux系统下安装MySQL的朋友来说,这个真的很麻烦。 我是试过用tar.gz的方式安装,按照别人的教程 总是会出现很多输入完指令报错的情况。所以一个步骤一个错误很复杂。 最后通过查找资料。发现一个用yum 方法。安装成功 而且很简单。步骤:1、卸载mariadb,否则安装mysql会出现冲突执行命令rpm -q...原创 2018-11-30 11:14:33 · 222 阅读 · 0 评论 -
Leetcode题解之数学问题(4)罗马数字转整数
题目:https://leetcode-cn.com/explore/interview/card/top-interview-questions-easy/25/math/63/题目描述:罗马数字包含以下七种字符: I, V, X, L,C,D 和 M。字符 数值I 1V 5X 10L...原创 2018-11-26 17:22:38 · 178 阅读 · 2 评论 -
Leetcode题解之其他(6)颠倒二进制位缺失数字
题目:https://leetcode-cn.com/explore/interview/card/top-interview-questions-easy/26/others/69/题目描述:给定一个包含 0, 1, 2, ..., n 中 n 个数的序列,找出 0 .. n 中没有出现在序列中的那个数。示例 1:输入: [3,0,1]输出: 2示例 2:输入: ...原创 2018-11-29 17:19:58 · 166 阅读 · 0 评论 -
Leetcode题解之数学问题(3) 3的幂
题目:https://leetcode-cn.com/explore/interview/card/top-interview-questions-easy/25/math/62/题目描述:给定一个整数,写一个函数来判断它是否是 3 的幂次方。示例 1:输入: 27输出: true示例 2:输入: 0输出: false示例 3:输入: 9输出: tru...原创 2018-11-26 16:47:22 · 368 阅读 · 0 评论 -
Leetcode题解之其他(5)有效的括号
题目:https://leetcode-cn.com/explore/interview/card/top-interview-questions-easy/26/others/68/题目描述:给定一个只包括 '(',')','{','}','[',']' 的字符串,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。 左括号必须以正确的顺序闭合。注意空字符...原创 2018-11-29 17:08:39 · 224 阅读 · 0 评论 -
Leetcode题解之其他(4)帕斯卡三角形
题目:https://leetcode-cn.com/explore/interview/card/top-interview-questions-easy/26/others/67/题目描述: 帕斯卡三角形给定一个非负整数 numRows,生成杨辉三角的前 numRows 行。在杨辉三角中,每个数是它左上方和右上方的数的和。示例:输入: 5输出:[ [...原创 2018-11-29 17:01:24 · 194 阅读 · 0 评论 -
Leetcode题解之数学问题(2) 计算质数
题目:https://leetcode-cn.com/problems/count-primes/题目描述:统计所有小于非负整数 n 的质数的数量。示例:输入: 10输出: 4解释: 小于 10 的质数一共有 4 个, 它们是 2, 3, 5, 7 。您是否在真实的面试环节中遇到过这道题目呢? 是的没有 思路: 用一个boolean 数组记录是否能为2...原创 2018-11-26 16:16:50 · 126 阅读 · 0 评论 -
Leetcode题解之数学问题(1) Fizz Buzz
题目:https://leetcode-cn.com/explore/interview/card/top-interview-questions-easy/25/math/60/题目描述:写一个程序,输出从 1 到 n 数字的字符串表示。1. 如果 n 是3的倍数,输出“Fizz”;2. 如果 n 是5的倍数,输出“Buzz”;3.如果 n 同时是3和5的倍数,输出 “Fiz...原创 2018-11-26 15:33:04 · 234 阅读 · 0 评论 -
[面试题]1000瓶毒药里面只有1瓶是有毒的,问需要多少只老鼠才能试出那瓶有毒。
题目:1000瓶毒药里面只有1瓶是有毒的,毒发时间为24个小时,问需要多少只老鼠才能在24小时后试出那瓶有毒。思路:这题试Bloom Fliter 算法。详情可以参考:https://blog.csdn.net/jiaomeng/article/details/1495500 这题和我之前看到的一道题有点像。题为, 有1000个苹果,分别装在10个...原创 2018-12-02 12:19:49 · 50124 阅读 · 27 评论 -
Leetcode题解之动态规划(3)最大子序和
题目:https://leetcode-cn.com/explore/interview/card/top-interview-questions-easy/23/dynamic-programming/56/题目描述: 最大子序和给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。示例:输入: [-2,1,-3,4,-1,...原创 2018-11-24 17:29:45 · 281 阅读 · 0 评论 -
Leetcode题解之动态规划(2) 买卖股票的最佳时机
题目:https://leetcode-cn.com/explore/interview/card/top-interview-questions-easy/23/dynamic-programming/55/题目描述:给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格。如果你最多只允许完成一笔交易(即买入和卖出一支股票),设计一个算法来计算你所能获取的最大利润。注意你...原创 2018-11-24 16:21:25 · 141 阅读 · 0 评论 -
Leetcode题解之动态规划(1)爬楼梯
题目:https://leetcode-cn.com/explore/interview/card/top-interview-questions-easy/23/dynamic-programming/54/题目描述:假设你正在爬楼梯。需要 n 阶你才能到达楼顶。每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?注意:给定 n 是一个正整数。示例 1:...原创 2018-11-24 15:58:10 · 301 阅读 · 0 评论 -
MySQL 不能插入中文字符的编码问题。
在 centos 下安装的mysql5.7.24 并没有默认的配置文件模板。所以一开始字符编码问题并不能通过网上教程解决在通过查阅资料之后使用第一种方法得到解决。第一种方法。 使用命令查看数据库的字符编码: mysql> show variables like 'char%'; 通过观察可以发现 character_set_database value...原创 2018-12-01 10:14:00 · 187 阅读 · 0 评论 -
[面试题]100层楼丢玻璃球,一旦超过某层就会破,你只有两个球。
题目:有一栋100层高的大楼,给你两个完全相同的玻璃球。假设从某一层开始,丢下玻璃球会摔碎。那么怎么利用手中的两个球,用什么最优策略知道这个临界的层是第几层??思路:最简单的,扔一个到51层 ,碎了,再试后面50层 ,没碎再试前面50层,总共50次。时间复杂度较高。是个烂方法。 有没有一种方法,能分段查找呢。一个球均匀分段的扔,比如 20层20层的扔,如果在4...原创 2018-12-01 17:33:22 · 24657 阅读 · 12 评论 -
Leetcode题解中级篇之数组和字符串(6)递增的三元子序列
题目:https://leetcode-cn.com/explore/interview/card/top-interview-questions-medium/29/array-and-strings/80/题目描述:给定一个未排序的数组,判断这个数组中是否存在长度为 3 的递增子序列。数学表达式如下:如果存在这样的 i, j, k, 且满足 0 ≤ i < j <...原创 2018-12-22 16:40:40 · 197 阅读 · 0 评论 -
Leetcode题解中级篇之链表(9)相交链表
题目:https://leetcode-cn.com/explore/interview/card/top-interview-questions-medium/31/linked-list/84/题目描述:编写一个程序,找到两个单链表相交的起始节点。如下面的两个链表:在节点 c1 开始相交。示例 1:输入:intersectVal = 8, listA = [4...原创 2018-12-27 14:50:16 · 148 阅读 · 0 评论 -
Leetcode题解中级篇之数组和字符串(5)最长回文子串
题目:https://leetcode-cn.com/explore/interview/card/top-interview-questions-medium/29/array-and-strings/79/题目描述:给定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s 的最大长度为 1000。示例 1:输入: "babad"输出: "bab"注意: "aba" ...原创 2018-12-21 15:52:30 · 214 阅读 · 0 评论 -
Leetcode题解中级篇之数组和字符串(4)无重复字符的最长子串
题目:https://leetcode-cn.com/explore/interview/card/top-interview-questions-medium/29/array-and-strings/78/题目描述:给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。示例 1:输入: "abcabcbb"输出: 3 解释: 因为无重复字符的最长子串是 "abc...原创 2018-12-21 14:47:07 · 179 阅读 · 0 评论 -
Leetcode题解中级篇之数组和字符串(8)奇偶链表
题目:https://leetcode-cn.com/explore/interview/card/top-interview-questions-medium/31/linked-list/83/题目描述:奇偶链表给定一个单链表,把所有的奇数节点和偶数节点分别排在一起。请注意,这里的奇数节点和偶数节点指的是节点编号的奇偶性,而不是节点的值的奇偶性。请尝试使用原地算法完成。你的算法...原创 2018-12-26 18:34:47 · 179 阅读 · 0 评论 -
Leetcode题解中级篇之链表(7)两数相加
题目:https://leetcode-cn.com/explore/interview/card/top-interview-questions-medium/31/linked-list/82/题目描述:给出两个 非空 的链表用来表示两个非负的整数。其中,它们各自的位数是按照 逆序 的方式存储的,并且它们的每个节点只能存储 一位 数字。如果,我们将这两个数相加起来,则会返回一个新的...原创 2018-12-26 18:26:18 · 150 阅读 · 0 评论 -
Leetcode题解中级篇之数组和字符串(3)字谜分组
题目:https://leetcode-cn.com/explore/interview/card/top-interview-questions-medium/29/array-and-strings/77/题目描述:给定一个字符串数组,将字母异位词组合在一起。字母异位词指字母相同,但排列不同的字符串。示例:输入: ["eat", "tea", "tan", "ate", "n...原创 2018-12-05 19:34:49 · 162 阅读 · 0 评论 -
Leetcode题解中级篇之数组和字符串(2)矩阵置零
题目:https://leetcode-cn.com/explore/interview/card/top-interview-questions-medium/29/array-and-strings/76/题目描述:给定一个 m x n 的矩阵,如果一个元素为 0,则将其所在行和列的所有元素都设为 0。请使用原地算法。示例 1:输入: [ [1,1,1], [1,0...原创 2018-12-05 19:06:39 · 151 阅读 · 0 评论 -
Leetcode题解中级篇之数组和字符串(1)三数之和
题目:https://leetcode-cn.com/explore/interview/card/top-interview-questions-medium/29/array-and-strings/75/题目描述:给定一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?找出所有满足条件且不重复的三元组。注意:...原创 2018-12-05 17:32:44 · 163 阅读 · 0 评论 -
剑指offer-Java实现:题目6、旋转数组的最小数字
题目描述把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。 输入一个非减排序的数组的一个旋转,输出旋转数组的最小元素。 例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1。 NOTE:给出的所有元素都大于0,若数组大小为0,请返回0。 思路:这个思路很简单。我是想用双指针,让查找更快点,写着写着感觉很棒,结果挂了。没找出哪里错了,...原创 2018-12-07 19:46:41 · 177 阅读 · 0 评论 -
剑指offer-Java实现:题目5、利用两个栈实现队列
题目描述用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。 思路:栈的特点:先进后出 。 队列特点:先进先出。自己画了画图,看的比较秦楚,大概是每次进队列操作都进stack1栈,出队列时必须先把stack1弹栈到stack2中,这样刚好就是倒过来的顺序了。stack1 : 1 > 2 1 > 3 2...原创 2018-12-07 19:40:43 · 149 阅读 · 0 评论 -
剑指offer-Java实现:题目4、重建二叉树
题目描述输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。 思路:了解二叉树的前,中,后序遍历的规律,我们就可以知道,通过前 中,或者 后 中 两种都能得到二叉树。主要通过三个步骤:1.查看前(后)...原创 2018-12-07 19:29:32 · 131 阅读 · 0 评论 -
剑指offer-Java实现:题目3、替换空格
题目描述输入一个链表,按链表值从尾到头的顺序返回一个ArrayList。 思路:看到说要从尾到头,很容易想到栈这种数据结构。 代码:import java.util.ArrayList;import java.util.Stack;public class Solution { public ArrayList<Integer> pri...原创 2018-12-07 19:21:45 · 147 阅读 · 0 评论 -
剑指offer-Java实现:题目2、替换空格
题目描述请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。 思路:就替换空格啊,Java写很简单。 代码:public class Solution { public String replaceSpace(StringBuffer str) { ...原创 2018-12-07 19:19:29 · 146 阅读 · 0 评论 -
剑指offer-Java实现:题目1、二维数组中的查找
题目描述在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。 思路:由于题目说从左到右,从上到下都是递增的。我一开始就想到用 对角线上的元素来和 目标元素比较。但是选的是右下角。有欠考虑了,因为右下角排除的元素是一个角落的范围。如果选择右...原创 2018-12-07 19:18:23 · 163 阅读 · 0 评论 -
Leetcode题解之设计问题(2)最大子序和最小栈
题目:https://leetcode-cn.com/explore/interview/card/top-interview-questions-easy/24/design/59/题目: 最小栈设计一个支持 push,pop,top 操作,并能在常数时间内检索到最小元素的栈。push(x) -- 将元素 x 推入栈中。 pop() -- 删除栈顶的元素。 top() -- ...原创 2018-11-25 16:49:42 · 112 阅读 · 0 评论 -
Leetcode题解之设计问题(1)shuffle an arrays
题目:https://leetcode-cn.com/explore/interview/card/top-interview-questions-easy/24/design/58/题目描述:打乱一个没有重复元素的数组。示例:// 以数字集合 1, 2 和 3 初始化数组。int[] nums = {1,2,3};Solution solution = new Soluti...原创 2018-11-25 16:45:14 · 102 阅读 · 0 评论 -
Leetcode题解之字符串(6) 验证回文字符串字符串转整数 (atoi)
题目:https://leetcode-cn.com/explore/interview/card/top-interview-questions-easy/5/strings/37/题目描述:实现 atoi,将字符串转为整数。该函数首先根据需要丢弃任意多的空格字符,直到找到第一个非空格字符为止。如果第一个非空字符是正号或负号,选取该符号,并将其与后面尽可能多的连续的数字组合起来,这部...原创 2018-11-14 14:14:43 · 128 阅读 · 0 评论 -
Leetcode题解之数组(9)旋转图像
题目:https://leetcode-cn.com/explore/interview/card/top-interview-questions-easy/1/array/31/题目描述:给定一个 n × n 的二维矩阵表示一个图像。将图像顺时针旋转 90 度。说明:你必须在原地旋转图像,这意味着你需要直接修改输入的二维矩阵。请不要使用另一个矩阵来旋转图像。示例 1:...原创 2018-11-12 15:48:41 · 177 阅读 · 0 评论 -
Leetcode题解之数组(8)有效的数独
题目:https://leetcode-cn.com/problems/valid-sudoku/description/题目描述:判断一个 9x9 的数独是否有效。只需要根据以下规则,验证已经填入的数字是否有效即可。数字 1-9 在每一行只能出现一次。 数字 1-9 在每一列只能出现一次。 数字 1-9 在每一个以粗实线分隔的 3x3 宫内只能出现一次。上图是一个部分填充的...原创 2018-11-12 14:38:05 · 144 阅读 · 0 评论 -
Leetcode题解之链表(1) 删除链表中的节点
题目:https://leetcode-cn.com/explore/interview/card/top-interview-questions-easy/6/linked-list/41/题目描述:请编写一个函数,使其可以删除某个链表中给定的(非末尾)节点,你将只被给定要求被删除的节点。现有一个链表 -- head = [4,5,1,9],它可以表示为: 4 ->...原创 2018-11-15 15:40:29 · 90 阅读 · 0 评论 -
Leetcode题解之字符串(9) 最长公共前缀
题目:https://leetcode-cn.com/explore/interview/card/top-interview-questions-easy/5/strings/40/题目描述:编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串 ""。示例 1:输入: ["flower","flow","flight"]输出: "fl"示例...原创 2018-11-15 15:11:30 · 151 阅读 · 0 评论