![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
文章平均质量分 67
printf("不要熬夜!")
这个作者很懒,什么都没留下…
展开
-
【每日一题】day29_01 正数数组的最小不可组成和
学习目标:目标:熟练运用Java所学知识学习内容:本文内容:使用java解决 正数数组的最小不可组成和文章目录学习目标:学习内容:题目描述解题思路:实现代码题目描述链接:https://www.nowcoder.com/questionTerminal/f5368cd8008d41f58b2da7ced2f4d809来源:牛客网给定一个正数数组arr,其中所有的值都为整数,以下是最小不可组成和的概念把arr每个子集内的所有元素加起来会出现很多值,其中最小的记为min,最大的记为m原创 2021-06-01 23:15:44 · 279 阅读 · 1 评论 -
【每日一题】day26_01 变态青蛙跳台阶
学习目标:目标:熟练运用Java所学知识学习内容:本文内容:使用java解决 变态青蛙跳台阶文章目录学习目标:学习内容:题目描述解题思路实现代码题目描述一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。示例1输入3输出4解题思路一共有n阶台阶,f(n)表示跳上n阶台阶的跳法推导:当第一次选择跳 1 个台阶的时候,则剩下的 n-1 个台阶,跳法有 f(n-1) 种当第一次选择跳 2 个台阶的时候,则原创 2021-05-25 20:36:56 · 109 阅读 · 0 评论 -
【每日一题】day24_01 年终奖
学习目标:目标:熟练运用Java所学知识学习内容:本文内容:使用java解决 年终奖文章目录学习目标:学习内容:题目描述解题思路实现代码题目描述链接:https://www.nowcoder.com/questionTerminal/72a99e28381a407991f2c96d8cb238ab来源:牛客网小东所在公司要发年终奖,而小东恰好获得了最高福利,他要在公司年会上参与一个抽奖游戏,游戏在一个6*6的棋盘上进行,上面放着36个价值不等的礼物,每个小的棋盘上面放置着一个礼物,原创 2021-05-17 16:01:23 · 322 阅读 · 0 评论 -
【每日一题】day23_02 计算字符串的距离
学习目标:目标:熟练运用Java所学知识学习内容:本文内容:使用java解决 :计算字符串的距离文章目录学习目标:学习内容:题目描述解题思路实现代码题目描述链接:https://www.nowcoder.com/questionTerminal/3959837097c7413a961a135d7104c314来源:牛客网Levenshtein距离,又称编辑距离,指的是两个字符串之间,由一个转换成另一个所需的最少编辑操作次数。许可的编辑操作包括将一个字符替换成另一个字符,插入原创 2021-05-17 00:08:44 · 163 阅读 · 0 评论 -
【每日一题】day19_02 查找两个字符串a,b中的最长公共子串
学习目标:目标:熟练运用Java所学知识学习内容:本文内容:使用java解决 查找两个字符串a,b中的最长公共子串文章目录学习目标:学习内容:题目描述解题思路题目描述查找两个字符串a,b中的最长公共子串。若有多个,输出在较短串中最先出现的那个。注:子串的定义:将一个字符串删去前缀和后缀(也可以不删)形成的字符串。请和“子序列”的概念分开!本题含有多组输入数据!输入描述:输入两个字符串输出描述:返回重复出现的字符示例1输入abcdefghijklmnopa原创 2021-05-16 16:13:39 · 258 阅读 · 0 评论 -
【每日一题】day05_02 连续子数组的最大和
学习目标:目标:熟练运用Java所学知识学习内容:本文内容:使用java解决 给定一个十进制数M,以及需要转换的进制数N。将十进制数M转化为N进制数文章目录学习目标:学习内容:题目描述解题思路实现代码题目描述输入一个整型数组,数组里有正数也有负数。数组中的一个或连续多个整数组成一个子数组。求所有子数组的和的最大值。要求时间复杂度为 O(n).示例1输入[1,-2,3,10,-4,7,2,-5]返回值18说明输入的数组为{1,-2,3,10,—4,7,2,一5},和最大的原创 2021-04-19 17:48:16 · 79 阅读 · 0 评论 -
【每日一题】day13_01 跳石板
学习目标:目标:熟练运用Java所学知识学习内容:本文内容:使用java解决 跳石板文章目录学习目标:学习内容:题目描述解题思路实现代码题目描述小易来到了一条石板路前,每块石板上从1挨着编号为:1、2、3… 这条石板路要根据特殊的规则才能前进:对于小易当前所在的编号为K的石板,小易单次只能往前跳K的一个约数(不含1和K)步,即跳到K+X(X为K的一个非1和本身的约数)的位置。小易当前处在编号为N的石板,他想跳到编号恰好为M的石板去,小易想知道最少需要跳跃几次可以到达。例如:原创 2021-05-01 09:50:25 · 195 阅读 · 2 评论 -
【每日一题】day18_01 字符串通配符
学习目标:目标:熟练运用Java所学知识学习内容:本文内容:使用java解决 字符串通配符文章目录学习目标:学习内容:题目描述解题思路实现代码题目描述链接:https://www.nowcoder.com/questionTerminal/43072d50a6eb44d2a6c816a283b02036来源:牛客网问题描述:在计算机中,通配符一种特殊语法,广泛应用于文件搜索、数据库、正则表达式等领域。现要求各位实现字符串通配符的算法。 要求:实现如下2个通配符:*:匹配0个或原创 2021-05-12 18:07:25 · 620 阅读 · 7 评论 -
【算法 动态规划】 分割回文串
学习目标:目标:熟练运用Java所学知识学习内容:本文内容:使用java解决 分割回文串文章目录学习目标:学习内容:题目描述解题思路实现代码题目描述给你一个字符串 s,请你将 s 分割成一些子串,使每个子串都是回文。返回符合要求的 最少分割次数 。示例 1:输入:s = “aab”输出:1解释:只需一次分割就可将 s 分割成 [“aa”,“b”] 这样两个回文子串。示例 2:输入: s = “a”输出: 0示例 3:输入:s = “ab”输出: 1原创 2021-05-06 21:16:32 · 325 阅读 · 0 评论 -
【算法 动态规划】 带权值的最小路径和 ,给定一个由非负整数填充的m x n的二维数组,现在要从二维数组的左上角走到右下角,请找出路径上的所有数字之和最小的路径。 注意:你每次只能向下或向右移动。
学习目标:目标:学习动态规划相关知识学习内容:本文内容:带权值的最小路径和文章目录学习目标:学习内容:题目描述解题思路实现代码题目描述给定一个由非负整数填充的m x n的二维数组,现在要从二维数组的左上角走到右下角,请找出路径上的所有数字之和最小的路径。注意:你每次只能向下或向右移动。示例1输入[[1,2],[5,6],[1,1]]返回值:8解题思路动态规划题目,首先需要分析出状态,状态转移方程,初始状态状态子状态:从(0,0)到达(1,0),(1,1),(2原创 2021-04-15 20:00:30 · 458 阅读 · 1 评论 -
【算法 动态规划】有障碍的路径总数和,在路径求和的基础上,如果在图中加入了一些障碍,有多少不同的路径? 分别用0和1代表空区域和障碍
学习目标:目标:学习动态规划相关知识学习内容:本文内容:有障碍的路径总数和,在路径求和的基础上,如果在图中加入了一些障碍,有多少不同的路径? 分别用0和1代表空区域和障碍文章目录学习目标:学习内容:题目描述解题思路题目描述如果在图中加入了一些障碍,有多少不同的路径?分别用0和1代表空区域和障碍例如:下图表示有一个障碍在3*3的图中央。有2条不同的路径解题思路同样是一道动态规划题目,而且是在上一篇求路径的基础上加上了改动上一篇:在无障碍的矩阵中求路劲状态:子状态:从(原创 2021-04-15 19:36:08 · 893 阅读 · 0 评论 -
【算法 动态规划】求路径总数 ,一个机器人在m×n大小的地图的左上角(起点)。 机器人每次向下或向右移动。机器人要到达地图的右下角(终点)。 可以有多少种不同的路径从起点走到终点?
学习目标:目标:学习动态规划相关知识学习内容:本文内容:求路径总数文章目录学习目标:学习内容:题目描述解题思路实现代码题目描述一个机器人在m×n大小的地图的左上角(起点)。机器人每次向下或向右移动。机器人要到达地图的右下角(终点)。可以有多少种不同的路径从起点走到终点?解题思路动态规划题目,首先需要分析出状态,状态转移方程,初始状态状态:子状态:从(0,0)到(0,1)(0,2)…(m-1)(n-1)的路径总数状态F(i,j):从(0,0)到(i,j)的路径总和状原创 2021-04-15 19:22:41 · 1730 阅读 · 0 评论 -
【算法 动态规划】三角矩阵,给出一个三角形,计算从三角形顶部到底部的最小路径和,每一步都可以移动到下面一行相邻的数字
学习目标:目标:学习动态规划相关知识学习内容:本文内容:学习动态规划的思想并使用动态规划解决斐波那契数列、青蛙跳台阶、连续子数组的最大和、拆分语句等相关问题。文章目录学习目标:学习内容:题目描述解题思路实现代码题目描述题目描述给出一个三角形,计算从三角形顶部到底部的最小路径和,每一步都可以移动到下面一行相邻的数字,例如:给出的三角形如下:[[20],[30,40],[60,50,70],[40,10,80,30]]最小的从顶部到底部的路径和是:20 +30 + 50 +原创 2021-04-15 17:37:08 · 461 阅读 · 1 评论 -
【牛客高频面试题 NC17】 最长回文子串,对于一个字符串,请设计一个高效算法,计算其中最长回文子串的长度。 给定字符串A以及它的长度n,请返回最长回文子串的长度。
学习目标:目标:熟练运用Java所学知识学习内容:本文内容:使用java解决 最长回文子串文章目录学习目标:学习内容:题目描述解题思路实现代码题目描述对于一个字符串,请设计一个高效算法,计算其中最长回文子串的长度。 给定字符串A以及它的长度n,请返回最长回文子串的长度。示例1输入 “abc1234321ab”,12返回值 7解题思路这个题目使用动态规划的思路做比暴力搜索效率高动态规划思路:首先我们知道回文串颠倒和不颠倒的结果是一样的,所以对于一个回文串,将头尾删去原创 2021-04-13 17:05:29 · 814 阅读 · 0 评论 -
【算法 动态规划】学习动态规划的思想并使用动态规划解决斐波那契数列、青蛙跳台阶、连续子数组的最大和、拆分语句等相关问题。
学习目标:目标:学习动态规划相关知识学习内容:本文内容:学习动态规划的思想并使用动态规划解决斐波那契数列、青蛙跳台阶、连续子数组的最大和、拆分语句等相关问题。文章目录学习目标:学习内容:一、Dynamic Programming 动态规划1.1 动态规划的定义1.2 动态规划的特点1.3 使用动态规划思想解决问题二、Fibonacci 斐波那契数列1.1 题目描述1.2实现代码三、变态青蛙跳台阶问题3.1 题目题目描述3.2 递推关系一、Dynamic Programming 动态规划1.原创 2021-04-10 15:54:15 · 167 阅读 · 0 评论