![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
主要以LeetCode算法习题为主。记录自己刷过的算法题
五更依旧朝花落
这个作者很懒,什么都没留下…
展开
-
LeetCode572 另一颗树的子树
LeetCode572 另一颗树的子树给定两个非空二叉树 s 和 t,检验 s 中是否包含和 t 具有相同结构和节点值的子树。s 的一个子树包括 s 的一个节点和这个节点的所有子孙。s 也可以看做它自身的一棵子树。来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/subtree-of-another-tree著作权归领扣网络所有。商业转...原创 2020-05-07 11:21:28 · 138 阅读 · 0 评论 -
LeetCode983 最低票价问题
LeetCode 983最低票价在一个火车旅行很受欢迎的国度,你提前一年计划了一些火车旅行。在接下来的一年里,你要旅行的日子将以一个名为 days 的数组给出。每一项是一个从 1 到 365 的整数。火车票有三种不同的销售方式:一张为期一天的通行证售价为 costs[0] 美元;一张为期七天的通行证售价为 costs[1] 美元;一张为期三十天的通行证售价为 costs[2] 美元。...原创 2020-05-06 17:29:31 · 178 阅读 · 0 评论 -
LeetCode5 最长回文串
LeetCode 5 最长回文串原题思路:回文串分为两种:奇数长度和偶数长度分别进行判断就好了。基准点左和右的字符相等package com.java.leetcode;/** * @author dengtiantian */public class Question5 { static class Solution { /** * ...原创 2020-05-02 10:19:17 · 111 阅读 · 0 评论 -
算法-快速排序
算法-快速排序快速排序的核心是:以第一个数为基准,比自己大的放到左边,比自己小的放在右边然后对剩下的两部分同样用快排一般这个很好理解,但是很多都没有解释放左边和右边需要如何怎么做:双指针方法,[从右往左找比自己小的 A,从左往右找比自己大的B]。AB交换位置,直到两个指针指向同一个数据为止实例:10,5,11,35,8,9,13你以为第一次交换后是 5,8,9,10,11,35,13实际...原创 2020-04-30 21:14:04 · 294 阅读 · 1 评论 -
华为OD机试-报文转换 只有20%通过率。但是没没找到未通过原因
机试题只有AC20%,但是目前没看到原因我看有人说是16进制的原因,但是输出也是16进制,是不用转换的吧。因为我全部都是用的String,不存在说数据被我转成了10进制报文转义功能报文中如果出现0x0A,转义成两个字节0x12 0x34,如果出现0x0B,转义成两个字节0xAB,0xCD,其他报文保持不变输出的第一个字节为报文长度(包含它自己)就是如果输入A就转义成12 34,如果输入B...原创 2020-04-28 09:04:28 · 10601 阅读 · 4 评论 -
牛客网-华为机试-字符串分隔
•连续输入字符串,请按长度为8拆分每个字符串后输出到新的字符串数组;•长度不是8整数倍的字符串请在后面补数字0,空字符串不处理。思路,去空格,然后末尾补0,再输出package com.java.huawei;import java.util.Scanner;/** * @author dengtiantian */public class Test3 { publ...原创 2020-04-22 17:36:47 · 252 阅读 · 0 评论 -
牛客网-华为机试-明明的随机数
牛客网-华为机试-明明的随机数题目描述明明想在学校中请一些同学一起做一项问卷调查,为了实验的客观性,他先用计算机生成了N个1到1000之间的随机整数(N≤1000),对于其中重复的数字,只保留一个,把其余相同的数去掉,不同的数对应着不同的学生的学号。然后再把这些数从小到大排序,按照排好的顺序去找同学做调查。请你协助明明完成“去重”与“排序”的工作(同一个测试用例里可能会有多组数据,希望大家能...原创 2020-04-22 00:28:13 · 227 阅读 · 0 评论 -
牛客网_华为机试-计算字符个数
牛客网_华为机试-计算字符个数题目描述写出一个程序,接受一个由字母和数字组成的字符串,和一个字符,然后输出输入字符串中含有该字符的个数。不区分大小写。输入描述:第一行输入一个有字母和数字以及空格组成的字符串,第二行输入一个字符。输出描述:输出输入字符串中含有该字符的个数。import java.util.Scanner;public class Main{ public...原创 2020-04-21 23:55:10 · 185 阅读 · 0 评论 -
LeetCode58. 最后一个单词的长度
LeetCode58. 最后一个单词的长度牛客网标记为华为笔试题其实比较简单稍微记录下就好package com.java.huawei;import java.util.Scanner;/** * @author dengtiantian */public class Solution58{ /** * @author dengtiantian ...原创 2020-04-21 23:30:50 · 110 阅读 · 0 评论 -
LeetCode509. 斐波那契数
LeetCode509. 斐波那契数斐波那契数,通常用 F(n) 表示,形成的序列称为斐波那契数列。该数列由 0 和 1 开始,后面的每一项数字都是前面两项数字的和。也就是:F(0) = 0, F(1) = 1F(N) = F(N - 1) + F(N - 2), 其中 N > 1.给定 N,计算 F(N)。来源:力扣(LeetCode)链接:https://leetcod...原创 2020-04-07 19:48:31 · 120 阅读 · 0 评论 -
LeetCode66. 加一
LeetCode66. 加一给定一个由整数组成的非空数组所表示的非负整数,在该数的基础上加一。最高位数字存放在数组的首位, 数组中每个元素只存储单个数字。你可以假设除了整数 0 之外,这个整数不会以零开头。来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/plus-one著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明...原创 2020-04-07 19:22:28 · 224 阅读 · 0 评论 -
LeetCode42. 接雨水(第二篇)
LeetCode42. 接雨水(第二篇)上一篇博客,是按照行,层层向上,计算。我觉得没什么问题,但是没通过。因为用例太长还没能在本地自测这个的思路是当前列能存储多少水当前列存储能存储多少水取决于:左边最高柱子,和右边最高的柱子,以及自己的底部可以想象,当柱子数组长度小于3(height.length<=2),无法装水,直接返回0能装多少水,取决一左右最高峰最短的,较矮的那个int...原创 2020-04-04 14:42:53 · 168 阅读 · 0 评论 -
LeetCode42. 接雨水(提交未通过,但是我还没找到不通过的原因)
42.接雨水我是按照行,层层向上,来求雨水体积提交记录314 / 315 个通过测试用例最后一个用例,我先通过本地调一下,结果发现,idea直接报代码过长那个用例数据实在太长了。我把他贴在我的CSDN代码,结果吧CSDN卡死了用例数据感兴趣的可以看看,随便支出这个算法为什么通过不了代码package com.java.leetcode;import org.w3c.dom.ls...原创 2020-04-04 13:35:47 · 235 阅读 · 0 评论 -
LeetCode35. 搜索插入位置
LeetCode35. 搜索插入位置给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。你可以假设数组中无重复元素。题目比较简单,仅贴代码记录下只是要注意些特殊情况,不要想着些花里胡哨的优化。以我目前的阶段,安心刷题就好了class Solution { public int searchInsert(i...原创 2020-04-04 09:32:02 · 160 阅读 · 0 评论 -
字符串转换整数(atoi)
字符串转换整数 (atoi)LeetCode算法第8题:请你来实现一个 atoi 函数,使其能将字符串转换成整数。首先,该函数会根据需要丢弃无用的开头空格字符,直到寻找到第一个非空格的字符为止。接下来的转化规则如下:如果第一个非空字符为正或者负号时,则将该符号与之后面尽可能多的连续数字字符组合起来,形成一个有符号整数。假如第一个非空字符是数字,则直接将其与之后连续的数字字符组合起来,形...原创 2020-04-03 16:00:31 · 212 阅读 · 0 评论