日常题解
文章平均质量分 63
日常题解 思路及代码 Java解决
笨笨在努力
总要热爱点儿什么
展开
-
剑指Offer46——把数字翻译成字符串
剑指Offer46——把数字翻译成字符串原创 2022-06-20 09:39:35 · 129 阅读 · 0 评论 -
错排问题Dn = (n - 1) * (Dn-1 + Dn-2)
错排问题原创 2022-06-12 10:54:04 · 1076 阅读 · 1 评论 -
Day1 ~ Day6 整理
1.多态之方法覆写方法覆写:子类与父类的方法名称,参数,返回值均一样考察重点!!!方法覆写的权限要求:方法覆写时,子类方法的权限修饰符一定要 >= 父类的权限(同为包访问权限,但是位于不同包下,也是不可以的)方法覆写时,不能出现private权限(如果父类该方法为private权限,则子类的同方法能编译,但是是作为一个普通方法,并不是方法覆写)(如果子类该方法为private权限,要么不符合>=父类方法权限,编译报错,要么两个都是private权限,没啥意义,也不是原创 2022-05-01 10:02:59 · 257 阅读 · 2 评论 -
Leetcode T448——消失的数字
emmm……这道题set集合可以很简单的解出来,但是,使用了额外空间,于是进阶要求说:你能在不使用额外空间且时间复杂度为 O(n) 的情况下解决这个问题吗? 你可以假定返回的数组不算在额外空间内于是乎,进阶版想不出来啊,而且这个进阶版思路上一次懂了今天二刷结果又忘忘了,所以,重点是进阶版,本人实在觉得妙啊,不晓得进阶版的原创题解是怎么想出来的啊😅1. 题目描述原题链接点这里:448. 找到所有数组中消失的数字 - 力扣(LeetCode) (leetcode-cn.com)给你一个含.原创 2022-04-14 21:22:38 · 688 阅读 · 16 评论 -
只出现一次的两个数字?
一个整型数组里除了两个数字之外,其他的数字都出现了两次。请写程序找出这两个只出现一次的数字原题链接附上:数组中只出现一次的数字_牛客题霸_牛客网 (nowcoder.com)之前做过只出现一次的一个数字,这种很简单,直接全部数字异或即可,最后异或的结果就是答案。然后,今天就碰到了升级款,有两个数字都是只出现了一次,让你找出这两个数。emmm……两个的话,如果仍旧全部异或一遍,最后得到的结果是这两个数字异或后的结果,貌似不太可行。于是,先用map集合遍历得到每个数字出现的次数,最后返回次原创 2022-04-09 18:21:36 · 120 阅读 · 3 评论 -
斐波那契数列的四种求解
目录描述方法一:迭代求解方法二:动规求解方法三:递归求解方法四:递归+Map剪枝描述大家都知道斐波那契数列,现在要求输入一个正整数 n ,请你输出斐波那契数列的第 n 项。斐波那契数列是一个满足fib(x)=\left\{ \begin{array}{rcl} 1 & {x=1,2}\\ fib(x-1)+fib(x-2) &{x>2}\\ \end{array} \right.fib(x)={1fib(x−1)+fib(x−2)x=1,...原创 2022-04-01 09:53:09 · 1257 阅读 · 3 评论 -
Leetcode第399题除法求值(弗洛伊德法 超详细注释)
目录1.题目描述:2.思路:3.详细代码1.题目描述:给你一个变量对数组 equations 和一个实数值数组 values 作为已知条件,其中 equations[i] = [Ai, Bi] 和 values[i] 共同表示等式 Ai / Bi = values[i] 。每个 Ai 或 Bi 是一个表示单个变量的字符串。另有一些以数组 queries 表示的问题,其中 queries[j] = [Cj, Dj] 表示第 j 个问题,请你根据已知条件找出 Cj / Dj = ?原创 2022-01-20 19:33:14 · 4996 阅读 · 14 评论 -
Leetcode第290题单词规律(哈希表超简单解法)
java+哈希原创 2022-01-19 19:09:01 · 820 阅读 · 4 评论 -
用Java实现简单的猜数字游戏
思路如下:(1)生成随机数字(2)读取猜测数字(3)猜测数字与随机数字进行比较,输出各个结果代码如下:import java.util.Random;import java.util.Scanner;public class GameNumber { public static void main(String[] args) {// 用Random实现生成随机数 Random random = new Random(); int.原创 2021-11-18 22:16:36 · 5265 阅读 · 2 评论 -
差分法的使用
差分法的使用1.引言问题提出:对一组数据,将第m个到第n个数据之间的数据全部加a,如果问题规模很小,用for循环是可以解决的,但如果问题规模很大,对不同的m,n,a操作n次,继续用for循环就比较耗时耗力了,为此,这里就有了差分法的使用2.原理实现对于一组初始的数据f=1,2,3,4,5,6,7 ,f共有7个数据,我们用length为7+2的数组存储该数据,注意,f[0]和f[8]为默认值0,f[1] = 1,f[2] = 2,f[3] = 3,f[4] = 4,f[5] = 5,f[6] = 6原创 2022-01-03 16:27:07 · 798 阅读 · 0 评论 -
Java求解多数元素问题
1.问题描述:给定一个大小为 n 的数组,找到其中的多数元素。多数元素是指在数组中出现次数 大于 ⌊ n/2 ⌋ 的元素。(你可以假设数组是非空的,并且给定的数组总是存在多数元素。)2.解决思路(这里整理了两种方法以作参考:排序法+投票法)排序法:首先理解题目,多数元素是指出现次数大于n/2的元素,既然大于n/2,可想而知,一个数组中有且仅有这一个多数元素,再思考之,如若将这个数组元素按升序排序,那么最中间的元素一定是该多数元素,因为多数元素个数大于n/2,则最中间必然是该元素。这里是关原创 2021-11-24 20:48:45 · 555 阅读 · 0 评论 -
用Java实现消除数字游戏
用Java实现消除数字游戏1.题目描述:数字消除游戏(Leetcode第390题)列表 arr 由在范围 [1, n] 中的所有整数组成,并按严格递增排序。请你对 arr 应用下述算法:从左到右,删除第一个数字,然后每隔一个数字删除一个,直到到达列表末尾。重复上面的步骤,但这次是从右到左。也就是,删除最右侧的数字,然后剩下的数字每隔一个删除一个。不断重复这两步,从左到右和从右到左交替进行,直到只剩下一个数字。给你整数 n ,返回 arr 最后剩下的数字2.题目解读:首先数列为严格递增排原创 2022-01-05 18:36:55 · 2853 阅读 · 0 评论