![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java算法笔记
crazy 678
互联网浪潮中的小白
展开
-
Java的Map集合常用方法
Java集合原创 2022-09-24 11:55:23 · 270 阅读 · 0 评论 -
计算星期天的数量
以下是一些已知信息,但是或许你需要自己做一些其他的调查。1900 年 1 月 1 日是星期一。30 天的月份有:9 月,4 月,6 月,1 1 月。此外的月份都是 31 天,当然 2 月除外。2 月在闰年有 29 天,其他时候有 28 天。年份可以被 4 整除的是闰年,但是不能 400 整除的世纪年(100 的整数倍年)除外。求:20 世纪(1901 年 1 月 1 日到 2000 年 12 月 31 日)一共有多少个星期日落在了当月的第一天?思路:*蔡勒(Zeller)公式:根据任意日原创 2022-04-07 01:34:07 · 162 阅读 · 0 评论 -
经典动态规划2题
1,数词字母数量从以下这个三角形的顶部开始,向相邻的下一行的数字移动,经过之数所能得到的最大的和为 23,即:3+7+4+9=2337 42 4 68 5 9 3找出从以下三角形的顶端走到底端的最大总和。思路:动态规划分析:这是一道经典的动态规划问题,为求三角形从上到下的最大和,先从最下一行开始倒推,即:max(8+2,5+2)=10, max(5+4,9+4)=13, max(9+6,3+6)=15这样可以将最下二行合为一行,即:37 410 13 15依次类推,可以继续倒原创 2022-04-07 01:12:25 · 90 阅读 · 0 评论 -
算法训练 印章(dp)
资源限制内存限制:256.0MB C/C++时间限制:1.0s Java时间限制:3.0s Python时间限制:5.0s问题描述 共有n种图案的印章,每种图案的出现概率相同。小A买了m张印章,求小A集齐n种印章的概率。输入格式 一行两个正整数n和m输出格式 一个实数P表示答案,保留4位小数。样例输入2 3样例输出0.7500数据规模和约定 1≤n,m≤20import java.util.Scanner;public class Main { p原创 2022-04-03 15:07:03 · 119 阅读 · 0 评论 -
算法提高 最大连续子段和
资源限制内存限制:256.0MB C/C++时间限制:1.0s Java时间限制:3.0s Python时间限制:5.0s问题描述 给出一个长为n的数列,a1,a2,……,an,求和最大的连续子序列,即找到一对(i,j),i<=j,使ai+ai+1+……+aj的和最大,输出这个和输入格式 第一行为正整数n第二行n个用空格分开的整数表示a1,a2,……,an输出格式 一个整数,表示最大连续子序列的和样例输入3-1 -2 -3样例输出-1数据规模和约定原创 2022-04-03 13:45:15 · 1030 阅读 · 0 评论 -
算法提高 打包
资源限制内存限制:256.0MB C/C++时间限制:1.0s Java时间限制:3.0s Python时间限制:5.0s问题描述 Lazy有N个礼物需要打成M个包裹,邮寄给M个人,这些礼物虽然很便宜,但是很重。Lazy希望每个人得到的礼物的编号都是连续的。为了避免支付高昂的超重费,他还希望让包裹的最大重量最小。输入格式 一行两个整数N和M。 一行N个整数,表示N个礼物的重量。输出格式 一个整数,表示最小的最大重量。样例输入3 21 1 2样例输出2数据规模和原创 2022-04-03 13:00:12 · 129 阅读 · 0 评论 -
算法提高 智能体系列赛
资源限制内存限制:256.0MB C/C++时间限制:1.0s Java时间限制:3.0s Python时间限制:5.0s问题描述 zsyzgu是一个弱菜,尽管如此他还是参加了智能体系列赛。智能体系列赛的问题经简化后是这样的,有一只猴子和一些矿点,知道他们在平面上的坐标,这只猴子要经过这些矿点至少一次。假设这只猴子从点A走到点B所要花费的步数是这两个点的曼哈顿距离(即|A.x-B.x|+|A.y-B.y|),问这只猴子经过这些矿点至少一次所需的最少步数。 系列赛中的许多选手都用了贪心原创 2022-04-03 00:28:10 · 103 阅读 · 0 评论 -
算法提高 搬运冰块
资源限制内存限制:256.0MB C/C++时间限制:1.0s Java时间限制:3.0s Python时间限制:5.0s问题描述 丑枫接到了一份奇葩的工作:往冰库里搬运冰块.冰库外放着N箱冰块,由于室外温度高,冰块会很快融化,且每箱冰块的融化速度不同.因为每箱冰块的体积,质量不等,把每箱冰块搬运进冰块花费的时间也不同.因此需要合理安排搬运顺序,才能使总的冰块融化量最小.丑枫请你帮忙计算最少的总融化量是多少,以便汇报上司.输入格式 第一行输入整数N 接下来N行,每行两个整数,分原创 2022-04-02 21:26:26 · 118 阅读 · 0 评论 -
Java实现进制转换方法汇总
利用Integer将十进制的数进行进制转换public class Main {public static void main(String[] args) {int n = 13;Integer.toHexString(n);System.out.println(n + “的二进制是:” + Integer.toBinaryString(n));System.out.println(n + “的八进制是:” + Integer.toOctalString(n));System.out.pr.原创 2022-04-01 22:31:58 · 1931 阅读 · 0 评论 -
Java算法每日练习
亲和数令 d(n)表示自然数 n 所有真因子(除开数 n 身的所有因子)的和,如果 d(a)=b 且 d(b)=a,其中 a≠b,那么 a 与 b 便为亲和数对,其中的每个数称为亲和数。例如:220 的真因子为 1, 2, 4, 5, 10, 11, 20, 22, 44, 55,110,所以 d(220)=284284 的真因子为 1,2, 4, 71、142,所以 d(284)=220,因此 220、284 为亲和数。求 10000 以下所有亲和数的和。答案:31626public .原创 2022-01-18 20:45:24 · 6832 阅读 · 0 评论 -
java实现链表创建和链表递归反转
链表用非递归实现反转如图://递归实现链表反转public class Node { int data; Node next; static Node reverseList(Node head){ if(head==null||head.next==null) return head; Node newList = reverseList(head.next); Node t1 = head.next;原创 2021-11-30 13:54:05 · 480 阅读 · 0 评论 -
java算法每日练习
这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Mar原创 2021-11-19 01:41:10 · 499 阅读 · 0 评论