
每日一题
橘白呀啊
这个作者很懒,什么都没留下…
展开
-
Java求二叉树的层序遍历
文章目录题目描述解题思路代码如下题目描述给定一个二叉树,返回该二叉树层序遍历的结果,(从左到右,一层一层地遍历)以下是本篇文章正文内容,下面案例可供参考解题思路根不为空时,将其入队若队列不为空,弹出其队头元素,保存输出分别判断当前cur的左节点和右节点,若不为空,入队输出代码如下import java.util.*;/* * public class TreeNode { * int val = 0; * TreeNode left = null; * .原创 2021-08-15 11:07:55 · 276 阅读 · 0 评论 -
java用两个栈实现队列
文章目录题目描述解题思路代码如下题目描述用两个栈来实现一个队列,分别完成在队列尾部插入整数(push)和在队列头部删除整数(pop)的功能。 队列中的元素为int类型。保证操作合法,即保证pop操作时队列内已有元素。以下是本篇文章正文内容,下面案例可供参考解题思路当插入时,直接插入 stack1当弹出时,如果 stack2 为空,将 stack1 中的全部数逐个出栈,入栈 stack2,再弹出 stack2 栈顶元素,当 stack2 不为空,弹出 stack2 栈顶元素,代码如下.原创 2021-08-15 09:19:22 · 336 阅读 · 0 评论 -
java求最小的K个数
文章目录题目描述代码如下题目描述给定一个数组,找出其中最小的K个数。例如数组元素是4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4。eg:输入:[0,1,2,1,2],3输出:[0,1,1]以下是本篇文章正文内容,下面案例可供参考代码如下import java.util.*;public class Solution { public ArrayList<Integer> GetLeastNumbers_Solution(i.原创 2021-08-14 14:45:29 · 426 阅读 · 0 评论 -
Java合并两个有序的数组
文章目录题目描述代码如下题目描述给你两个有序整数数组 nums1 和 nums2,请你将 nums2 合并到 nums1 中,使 nums1 成为一个有序数组。初始化 nums1 和 nums2 的元素数量分别为 m 和 n 。你可以假设 nums1 的空间大小等于 m + n,这样它就有足够的空间保存来自 nums2 的元素。以下是本篇文章正文内容,下面案例可供参考代码如下public class Solution { //原始方法 public void merge(int .原创 2021-08-14 12:23:24 · 679 阅读 · 0 评论 -
java输出数组的交集、并集
分别输出两个数组的交集和并集import java.util.*;public class Main { /** * 两个数组,分别输出它的交集和并集 */ public static void main(String[] args) { int[] arr1 = {1,5,2,4,8,7}; int[] arr2 = {7,5,3,8,0}; System.out.println(func1(arr1, arr2));原创 2021-08-14 11:22:29 · 431 阅读 · 0 评论 -
Java Emacs计算器
文章目录题目描述解题思路代码如下题目描述Emacs号称神的编辑器,它自带了一个计算器。与其他计算器不同,它是基于后缀表达式的,即运算符在操作数的后面。例如“2 3 +”等价于中缀表达式的“2 + 3”。请你实现一个后缀表达式的计算器eg:输入:32 3 +52 2 + 3 *52 2 3 + *输出:51210以下是本篇文章正文内容,下面案例可供参考解题思路常规运算2+3中缀表达式:操作符在两个操作数之间2+3*(4+5)-6后缀表达式:操作符在.原创 2021-08-09 10:13:45 · 199 阅读 · 0 评论 -
java发邮件
文章目录题目描述解题思路代码如下题目描述NowCoder每天要给很多人发邮件。有一天他发现发错了邮件,把发给A的邮件发给了B,把发给B的邮件发给了A。于是他就思考,要给n个人发邮件,在每个人仅收到1封邮件的情况下,有多少种情况是所有人都收到了错误的邮件?即没有人收到属于自己的邮件。eg:输入:23输出:12以下是本篇文章正文内容,下面案例可供参考解题思路假设有n份信要装到n个信封中,每封信应该要放到对应的信封中,由于疏忽放错,总共有多少种可能性每封信都放错D(n).原创 2021-08-09 08:42:49 · 161 阅读 · 0 评论 -
java数列的和
文章目录题目描述解题思路代码如下题目描述数列的定义如下:数列的第一项为n,以后各项为前一项的平方根,求数列的前m项的和eg:输入:81 42 2输出:94.733.41以下是本篇文章正文内容,下面案例可供参考解题思路当m值>0 时,累加一次开根号的值,m–,直到加到m为0,输出保留两位小数代码如下import java.util.*;public class Main { public static void main(String[] args) .原创 2021-08-08 08:34:04 · 316 阅读 · 0 评论 -
java淘宝网店
文章目录题目描述解题思路代码如下题目描述NowCoder在淘宝上开了一家网店。他发现在月份为素数的时候,当月每天能赚1元;否则每天能赚2元。现在给你一段时间区间,请你帮他计算总收益有多少。eg:输入:2000 1 1 2000 1 312000 2 1 2000 2 29输出:6229以下是本篇文章正文内容,下面案例可供参考解题思路1993~20131993剩余的收益 + [1994,2012] 全年的收益 + 2013年有的收益1993~1993只有1993年.原创 2021-06-07 15:43:34 · 585 阅读 · 4 评论 -
java斐波那契凤尾
文章目录题目描述代码如下题目描述NowCoder号称自己已经记住了1-100000之间所有的斐波那契数。为了考验他,我们随便出一个数n,让他说出第n个斐波那契数。当然,斐波那契数会很大。因此,如果第n个斐波那契数不到6位,则说出该数;否则只说出最后6位。eg:输入:1234100000输出:1235537501以下是本篇文章正文内容,下面案例可供参考代码如下import java.util.*;public class Main { public s.原创 2021-06-05 21:33:02 · 196 阅读 · 0 评论 -
java分解因数
文章目录题目描述解题思路代码如下题目描述所谓因子分解,就是把给定的正整数a,分解成若干个素数的乘积,即 a = a1 × a2 × a3 × … × an,并且 1 < a1 ≤ a2 ≤ a3 ≤ … ≤ an。其中a1、a2、…、an均为素数。先给出一个整数a,请输出分解后的因子。eg:输入:1018输出:10 = 2 * 518 = 2 * 3 * 3以下是本篇文章正文内容,下面案例可供参考解题思路如果为素数,即a = a;如果为合数,即a = 2 * .原创 2021-06-05 20:59:01 · 1326 阅读 · 0 评论 -
Java消息加密问题
文章目录题目描述解题思路代码如下题目描述NowCoder生活在充满危险和阴谋的年代。为了生存,他首次发明了密码,用于军队的消息传递。假设你是军团中的一名军官,需要把发送来的消息破译出来、并提供给你的将军。消息加密的办法是:对消息原文中的每个字母,分别用该字母之后的第5个字母替换(例如:消息原文中的每个字母A 都分别替换成字母F),其他字符不变,并且消息原文的所有字母都是大写的。密码中的字母与原文中的字母对应关系如下。密码字母:A B C D E F G H I J K L M N O P Q .原创 2021-06-05 20:31:50 · 408 阅读 · 0 评论 -
Java因子个数
文章目录题目描述解题思路代码如下题目描述一个正整数可以分解成一个或多个数组的积。例如36=223*3,即包含2和3两个因子。NowCoder最近在研究因子个数的分布规律,现在给出一系列正整数,他希望你开发一个程序输出每个正整数的因子个数。eg:输入:302620输出:322以下是本篇文章正文内容,下面案例可供参考解题思路代码如下import java.util.*;public class Main { public static void main.原创 2021-06-05 20:09:27 · 688 阅读 · 0 评论 -
Java假币问题
文章目录题目描述解题思路代码如下题目描述居然有假币! 现在猪肉涨了,但是农民的工资却不见涨啊,没钱怎么买猪肉啊。nowcoder这就去买猪肉,结果找来的零钱中有假币!!!可惜nowcoder 一不小心把它混进了一堆真币里面去了。只知道假币的重量比真币的质量要轻,给你一个天平(天平两端能容纳无限个硬币),请用最快的时间把那个可恶的假币找出来。eg:输入:3120输出:13以下是本篇文章正文内容,下面案例可供参考解题思路代码如下import java.util.*;.原创 2021-06-05 19:47:54 · 628 阅读 · 0 评论 -
java猴子分桃子
文章目录题目描述解题思路代码如下题目描述老猴子辛苦了一辈子,给那群小猴子们留下了一笔巨大的财富——一大堆桃子。老猴子决定把这些桃子分给小猴子。第一个猴子来了,它把桃子分成五堆,五堆一样多,但还多出一个。它把剩下的一个留给老猴子,自己拿走其中的一堆。第二个猴子来了,它把桃子分成五堆,五堆一样多,但又多出一个。它把多出的一个留给老猴子,自己拿走其中的一堆。后来的小猴子都如此照办。最后剩下的桃子全部留给老猴子。这里有n只小猴子,请你写个程序计算一下在开始时至少有多少个桃子,以及最后老猴子最少能得到.原创 2021-05-22 15:57:30 · 412 阅读 · 0 评论 -
java奇数位上都是奇数或者偶数位上都是偶数
文章目录题目描述解题思路代码如下题目描述给定一个长度不小于2的数组arr。写一个函数调整arr,使arr中要么所有的偶数位上都是偶数,要么所有的奇数位上都是奇数上。要求:如果数组长度为N,时间复杂度请达到O(N),额外空间复杂度请达到O(1)下标0,2,4,6…算作偶数位,下标1,3,5,7…算作奇数位,例如[1,2,3,4]调整为[2,1,4,3]即可eg:输入:[1,2,3,4]输出:[2,1,4,3]以下是本篇文章正文内容,下面案例可供参考解题思路循环遍历这个.原创 2021-05-22 15:04:09 · 234 阅读 · 0 评论 -
java快到碗里来
文章目录题目描述解题思路代码如下题目描述小喵们很喜欢把自己装进容器里的(例如碗),但是要是碗的周长比喵的身长还短,它们就进不去了。现在告诉你它们的身长,和碗的半径,请判断一下能否到碗里去。注意:每组数据包含两个整数n (1≤n≤2128) 和r (1≤r≤2128),分别代表喵的身长和碗的半径。圆周率使用3.14eg:输入:6 17 19876543210 1234567890输出:YesNoNo以下是本篇文章正文内容,下面案例可供参考解题思路因为n和r的取值.原创 2021-05-22 13:55:10 · 227 阅读 · 1 评论 -
java公共子串计算
文章目录题目描述解题思路代码如下题目描述给定两个只包含小写字母的字符串,计算两个字符串的最大公共子串的长度。注:子串的定义指一个字符串删掉其部分前缀和后缀(也可以不删)后形成的字符串。eg:输入:asdfaswerasdfaswer输出:6以下是本篇文章正文内容,下面案例可供参考解题思路此题可采用动态规划x(i): 字符串第i个字符y(j): 字符串第j个字符状态:F[i,j]:表示以x(i),y(j)结尾的最大子串长度状态转移方程:x(i) != y(j).原创 2021-05-21 16:45:53 · 619 阅读 · 0 评论 -
java星际密码问题
文章目录题目描述解题思路代码如下题目描述星际战争开展了100年之后,NowCoder终于破译了外星人的密码!他们的密码是一串整数,通过一张表里的信息映射成最终4位密码。表的规则是:n对应的值是矩阵X的n次方的左上角,如果这个数不足4位则用0填充,如果大于4位的则只输出最后4位。|1 1|^n => |Xn …||1 0| |… …|例如n=2时,|1 1|^2 => |1 1| * |1 1| => |2 1||1 0| |1 0| |1 0|.原创 2021-05-21 16:39:16 · 291 阅读 · 0 评论 -
java年终奖问题
文章目录题目描述解题思路代码如下题目描述小东所在公司要发年终奖,而小东恰好获得了最高福利,他要在公司年会上参与一个抽奖游戏,游戏在一个6*6的棋盘上进行,上面放着36个价值不等的礼物,每个小的棋盘上面放置着一个礼物,他需要从左上角开始游戏,每次只能向下或者向右移动一步,到达右下角停止,一路上的格子里的礼物小东都能拿到,请设计一个算法使小东拿到价值最高的礼物。给定一个6*6的矩阵board,其中每个元素为对应格子的礼物价值,左上角为[0,0],请返回能获得的最大价值,保证每个礼物价值大于100小于1.原创 2021-05-21 15:51:31 · 566 阅读 · 2 评论 -
java数根问题
文章目录题目描述解题思路代码如下题目描述数根可以通过把一个数的各个位上的数字加起来得到。如果得到的数是一位数,那么这个数就是数根;如果结果是两位数或者包括更多位的数字,那么再把这些数字加起来。如此进行下去,直到得到是一位数为止。比如,对于24 来说,把2 和4 相加得到6,由于6 是一位数,因此6 是24 的数根。再比如39,把3 和9 加起来得到12,由于12 不是一位数,因此还得把1 和2 加起来,最后得到3,这是一个一位数,因此3 是39 的数根。现在给你一个正整数,输出它的数根。e.原创 2021-05-20 17:33:42 · 332 阅读 · 0 评论 -
java迷宫问题
文章目录题目描述解题思路代码如下相似题目题目描述定义一个二维数组N*M(其中2<=N<=10;2<=M<=10),如5 × 5数组下所示:int maze [5] [5] = {0, 1, 0, 0, 0,0, 1, 0, 1, 0,0, 0, 0, 0, 0,0, 1, 1, 1, 0,0, 0, 0, 1, 0,};它表示一个迷宫,其中的1表示墙壁,0表示可以走的路,只能横着走或竖着走,不能斜着走,要求编程序找出从左上角到右下角的最短路线。入口点为[0,0.原创 2021-05-20 17:32:55 · 1611 阅读 · 0 评论 -
java查找两个字符串a,b中的最长公共子串
文章目录题目描述解题思路代码如下题目描述查找两个字符串a,b中的最长公共子串。若有多个,输出在较短串中最先出现的那个。注:子串的定义:将一个字符串删去前缀和后缀(也可以不删)形成的字符串。请和“子序列”的概念分开!本题含有多组输入数据!eg:输入:abcdefghijklmnopabcsafjklmnopqrstuvw输出:jklmnop以下是本篇文章正文内容,下面案例可供参考解题思路两个字符串,将str1始终指向较短的那个将str1 放进StringBuilder.原创 2021-05-19 16:52:07 · 2361 阅读 · 0 评论 -
javaMP3光标位置
文章目录题目描述解题思路代码如下题目描述MP3 Player因为屏幕较小,显示歌曲列表的时候每屏只能显示几首歌曲,用户要通过上下键才能浏览所有的歌曲。为了简化处理,假设每屏只能显示4首歌曲,光标初始的位置为第1首歌。现在要实现通过上下键控制光标移动来浏览歌曲列表,控制逻辑如下:歌曲总数<=4的时候,不需要翻页,只是挪动光标位置。光标在第一首歌曲上时,按Up键光标挪到最后一首歌曲;光标在最后一首歌曲时,按Down键光标挪到第一首歌曲。其他情况下用户按Up键,光标挪到上一首歌曲;用户.原创 2021-05-19 16:30:26 · 208 阅读 · 4 评论 -
java合法括号序列判断
文章目录题目描述解题思路代码如下注意题目描述找出字符串中第一个只出现一次的字符输出第一个只出现一次的字符,如果不存在输出-1eg:输入:asdfasdfoaabb输出:o-1以下是本篇文章正文内容,下面案例可供参考解题思路由题意知,要找出只出现一次的第一个字符,可以判断这个字符的第一位和最后一位的索引是否相等,若相等说明只出现了一次代码如下import java.util.*;public class Main { public static void .原创 2021-05-19 11:36:04 · 774 阅读 · 0 评论 -
java计算编辑距离
</font>@[TOC](文章目录)<hr style=" border:solid; width:100px; height:1px;" color=#000000 size=1"># 题目描述Levenshtein 距离,又称编辑距离,指的是两个字符串之间,由一个转换成另一个所需的最少编辑操作次数。许可的编辑操作包括将一个字符替换成另一个字符,插入一个字符,删除一个字符。编辑距离的算法是首先由俄国科学家Levenshtein提出的,故又叫Levenshtein Distance。原创 2021-05-19 11:32:35 · 1194 阅读 · 0 评论 -
java判断是否能组成三角形
文章目录题目描述解题思路代码如下题目描述给定三条边,请你判断一下能不能组成一个三角形。eg:输入:1 2 32 2 2输出:NoYes以下是本篇文章正文内容,下面案例可供参考解题思路由题意得:要判断三条边得长度是否能组成一个三角形条件为:任意两边的和要大于第三边,任意两边的差要小于第三边注意:求差时要取绝对值代码如下import java.util.Scanner;import static java.lang.Math.abs;public class.原创 2021-05-19 11:30:46 · 4732 阅读 · 0 评论 -
java汽水瓶
文章目录题目描述解题思路代码如下题目描述有这样一道智力题:“某商店规定:三个空汽水瓶可以换一瓶汽水。小张手上有十个空汽水瓶,她最多可以换多少瓶汽水喝?”答案是5瓶,方法如下:先用9个空瓶子换3瓶汽水,喝掉3瓶满的,喝完以后4个空瓶子,用3个再换一瓶,喝掉这瓶满的,这时候剩2个空瓶子。然后你让老板先借给你一瓶汽水,喝掉这瓶满的,喝完以后用3个空瓶子换一瓶满的还给老板。如果小张手上有n个空汽水瓶,最多可以换多少瓶汽水喝?eg:输入:310810输出:1540以下是本.原创 2021-05-17 11:48:49 · 427 阅读 · 0 评论 -
java洗牌问题
文章目录题目描述解题思路代码如下题目描述洗牌在生活中十分常见,现在需要写一个程序模拟洗牌的过程。现在需要洗2n张牌,从上到下依次是第1张,第2张,第3张一直到第2n张。首先,我们把这2n张牌分成两堆,左手拿着第1张到第n张(上半堆),右手拿着第n+1张到第2n张(下半堆)。接着就开始洗牌的过程,先放下右手的最后一张牌,再放下左手的最后一张牌,接着放下右手的倒数第二张牌,再放下左手的倒数第二张牌,直到最后放下左手的第一张牌。接着把牌合并起来就可以了。例如:有6张牌,最开始牌的序列是1,2,3,.原创 2021-05-17 11:07:09 · 285 阅读 · 0 评论 -
java走方格的方案数
</font>@[TOC](文章目录)<hr style=" border:solid; width:100px; height:1px;" color=#000000 size=1"># 题目描述请计算n*m的棋盘格子(n为横向的格子数,m为竖向的格子数)沿着各自边缘线从左上角走到右下角,总共有多少种走法,要求不能走回头路即:只能往右和往下走,不能往左和往上走。eg:> 输入:> 2 2> 1 2> 输出: > 6> 3<hr style=" bor原创 2021-05-15 17:20:23 · 762 阅读 · 0 评论 -
java幸运的袋子
</font>@[TOC](文章目录)<hr style=" border:solid; width:100px; height:1px;" color=#000000 size=1"># 题目描述一个袋子里面有n个球,每个球上面都有一个号码(拥有相同号码的球是无区别的)。如果一个袋子是幸运的当且仅当所有球的号码的和大于所有球的号码的积。例如:如果袋子里面的球的号码是{1, 1, 2, 3},这个袋子就是幸运的,因为1 + 1 + 2 + 3 > 1 * 1 * 2 * 3原创 2021-05-15 11:15:48 · 382 阅读 · 1 评论 -
java跳石板
文章目录题目描述解题思路代码如下题目描述小易来到了一条石板路前,每块石板上从1挨着编号为:1、2、3…这条石板路要根据特殊的规则才能前进:对于小易当前所在的编号为K的 石板,小易单次只能往前跳K的一个约数(不含1和K)步,即跳到K+X(X为K的一个非1和本身的约数)的位置。 小易当前处在编号为N的石板,他想跳到编号恰好为M的石板去,小易想知道最少需要跳跃几次可以到达。例如:N = 4,M = 24:4->6->8->12->18->24于是小易最少需要跳跃5次.原创 2021-05-15 10:36:07 · 271 阅读 · 0 评论 -
java字符串通配符
问题描述:在计算机中,通配符一种特殊语法,广泛应用于文件搜索、数据库、正则表达式等领域。现要求各位实现字符串通配符的算法。要求:实现如下2个通配符:*:匹配0个或以上的字符(字符由英文字母和数字0-9组成,不区分大小写。下同)?:匹配1个字符输入:通配符表达式;一组字符串。输出:返回匹配的结果,正确输出true,错误输出false本题含有多组样例输入!原创 2021-05-13 17:48:14 · 2089 阅读 · 0 评论 -
java完全数计算
完全数(Perfect number),又称完美数或完备数,是一些特殊的自然数。它所有的真因子(即除了自身以外的约数)的和(即因子函数),恰好等于它本身。例如:28,它有约数1、2、4、7、14、28,除去它本身28外,其余5个数相加,1+2+4+7+14=28。s输入n,请输出n以内(含n)完全数的个数。计算范围, 0 < n <= 500000本题输入含有多组样例。原创 2021-05-13 17:11:42 · 1413 阅读 · 0 评论 -
java扑克牌的大小
一副扑克牌由54张组成,含3~A、2各4张,小王1张,大王1张。牌面从小到大用如下字符和字符串表示(其中,小写joker表示小王,大写JOKER表示大王):3 4 5 6 7 8 9 10 J Q K A 2 joker JOKER输入两手牌,两手牌之间用"-"连接,每手牌的每张牌以空格分隔,"-"两边没有空格,如:4 4 4 4-joker JOKER。请比较两手牌大小,输出较大的牌,如果不存在比较关系则输出ERROR。基本规则:(1)输入每手牌可能是个子、对子、顺子(连续5张)、三个、炸弹(原创 2021-05-13 16:56:21 · 585 阅读 · 0 评论 -
java取手套问题
在地下室里放着n种颜色的手套,手套分左右手,但是每种颜色的左右手手套个数不一定相同。A先生现在要出门,所以他要去地下室选手套。但是昏暗的灯光让他无法分辨手套的颜色,只能分辨出左右手。所以他会多拿一些手套,然后选出一双颜色相同的左右手手套。现在的问题是,他至少要拿多少只手套(左手加右手),才能保证一定能选出一双颜色相同的手套。给定颜色种数n(1≤n≤13),同时给定两个长度为n的数组left,right,分别代表每种颜色左右手手套的数量。数据保证左右的手套总数均不超过26,且一定存在至少一种合法方原创 2021-05-13 15:56:21 · 179 阅读 · 0 评论 -
java超长正整数的加法
文章目录题目描述解题思路代码如下题目描述请设计一个算法完成两个超长正整数的加法。接口说明:/*请设计一个算法完成两个超长正整数的加法。输入参数:String addend:加数String augend:被加数返回值:加法结果*/ public String AddLongInteger(String addend, String augend){ /*在这里实现功能*/ return null; }eg:输入:9999999999999999999.原创 2021-05-12 21:39:04 · 383 阅读 · 0 评论 -
java查找输入整数二进制中1的个数
查找输入整数二进制中1的个数原创 2021-05-12 21:05:05 · 593 阅读 · 0 评论 -
java找出字符串中第一个只出现一次的字符
文章目录题目描述解题思路代码如下注意题目描述找出字符串中第一个只出现一次的字符输出第一个只出现一次的字符,如果不存在输出-1eg:输入:asdfasdfoaabb输出:o-1以下是本篇文章正文内容,下面案例可供参考解题思路由题意知,要找出只出现一次的第一个字符,可以判断这个字符的第一位和最后一位的索引是否相等,若相等说明只出现了一次代码如下import java.util.*;public class Main { public static void .原创 2021-05-12 20:43:00 · 4515 阅读 · 0 评论 -
java小易的升级之路
文章目录题目描述解题思路代码如下题目描述小易经常沉迷于网络游戏.有一次,他在玩一个打怪升级的游戏,他的角色的初始能力值为 a.在接下来的一段时间内,他将会依次遇见n个怪物,每个怪物的防御力为b1,b2,b3…bn.如果遇到的怪物防御力bi小于等于小易的当前能力值c,那么他就能轻松打败怪物,并 且使得自己的能力值增加bi;如果bi大于c,那他也能打败怪物,但他的能力值只能增加bi 与c的最大公约数.那么问题来了,在一系列的锻炼后,小易的最终能力值为多少?eg:输入:3 5050 10.原创 2021-05-12 20:42:41 · 166 阅读 · 1 评论