自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 收藏
  • 关注

原创 java数组拷贝

浅拷贝:数组如果存放引用类型地址,进行拷贝后,原数组中存放的地址拷贝到新数组中,此时是两个相同的引用指向一个对象。如果原数组把内容更改,拷贝的数组内容对应也做更改。深拷贝:新数组的地址与原数组的地址不同,不是简单的引用拷贝。原数组内容改变时,新数组的内容不会改变。数组内容是简单类型的,如int、float甚至String类型,使用clone()、copyOf()、arraycopy()方法拷贝,实现的都是深拷贝。新的数组放在一个新的地址中。 int arr1[] = {1,2

2021-10-30 21:26:35 103

原创 0x00 二分

整数二分模板当区间[l,r]的更新操作是r = mid;l = mid+1时,计算mid时不需要加1;int bsearch_1(int l,int r){ while(l < r){ int mid = l+r>>1; if(check(mid))r = mid; else l = mid+1; } return 1;}当区间[l,r]的更新操作是r = mid-1; l = mid时,计算mid时需要加1;int bsearch_1(int l,

2021-08-31 16:09:17 71

原创 0x00 前缀与差分

前缀和:对于一个给定的数列,它的前缀和序列可以通过相加一一进行递推一个部分和,数列A某个下标区间内的数的和可以表示为前缀和相见的方式从而可以以线性的速度算出数组某一部分的和例题 激光炸弹一种新型的激光炸弹,可以摧毁一个边长为 R 的正方形内的所有的目标。现在地图上有 N 个目标,用整数Xi,Yi表示目标在地图上的位置,每个目标都有一个价值Wi。激光炸弹的投放是通过卫星定位的,但其有一个缺点,就是其爆炸范围,即那个边长为 R 的正方形的边必须和x,y轴平行。若目标位于爆

2021-08-31 15:31:40 204

原创 0x00 递归与递推(下)

例题 奇怪的汉诺塔输入格式没有输入输出格式对于每一个整数n(1≤n≤12),输出一个满足条件的最小移动次数,每个结果占一行。输入样例:没有输入输出样例:参考输出格式...

2021-08-31 14:43:05 86

原创 0x00 递归与递推(中)

例题 递归实现排列型枚举题目描述把 1~n 这 n 个整数排成一行后随机打乱顺序,输出所有可能的次序。输入格式一个整数n。输出格式按照从小到大的顺序输出所有方案,每行1个。首先,同一行相邻两个数用一个空格隔开。其次,对于两个不同的行,对应下标的数一一比较,字典序较小的排在前面。数据范围1≤n≤9输入样例:3输出样例:1 2 31 3 22 1 32 3 13 1 23 2 1解题思路:DFS实现全排列

2021-08-31 14:28:52 112

原创 0x00 递归与递推(上)

递归:以“原问题”为起点尝试寻找把状态空间缩小到已知的“问题边界”的路线,再通过该路线反向回溯的遍历方式。递推:以已知的“问题边界”为起点向“原问题”正向推导的扩展方式。使用枚举算法暴力搜索整个状态空间,经常使用到递归算法。例题 递归实现指数型枚举题目描述从 1~n 这 n 个整数中随机选取任意多个,输出所有可能的选择方案。输入格式输入一个整数n。输出格式每行输出一种方案。同一行内的数必须升序排列,相邻两个数用恰好1个空格隔开。.

2021-08-31 14:11:35 68

原创 0x00 位运算(下)

例题 64位整数乘法题目描述求 a 乘 b 对 p 取模的值。数据范围1≤a,b,p≤10^18样例输入样例:345输出样例:2解题思路:a * b可以看作a + a + … + a 即b个a相加a * 1 = aa * 2 = 2aa * 4 = 4aa * 8 = 8a…a * (2^k) = 2^k * a k的时间复杂度是O(logb)从中挑出组成b的数相加解模板..

2021-08-31 13:58:49 286

原创 0x00 位运算(上)

四种操作 :与&或|非~异或xor(c++中异或用^表示)补码:1 + 1的补码 = 0000000000 <—— 做最高位不进位运算1 + 1111111111 = 00000000001的补码 = 1111111111以此类推2的补码 = 1111111110总结某个数x + ? = 00000……00 做最高位不进位运算?即为x的补码? = ~x + 10x3F0x3F满足:..

2021-08-31 13:42:38 797

原创 蓝桥杯 算法提高 八数码 java

资源限制时间限制:1.0s 内存限制:256.0MB问题描述  RXY八数码输入格式  输入两个3*3表格  第一个为目标表格  第二个为检索表格输出格式  输出步数样例输入1 2 34 5 67 8 01 2 34 5 67 0 8样例输出1数据规模和约定  3*3*2import java.util.HashMap;import java.util.LinkedList;import java.util.Queue;imp.

2021-05-30 20:21:27 50

原创 蓝桥杯 和最大子序列 java

问题描述  对于一个给定的长度为N的整数序列A,它的“子序列”的定义是:A中非空的一段连续的元素(整数)。你要完成的任务是,在所有可能的子序列中,找到一个子序列,该子序列中所有元素的和是最大的(跟其他所有子序列相比)。程序要求你输出这个最大值。输入格式  输入文件的第一行包含一个整数N,第二行包含N个整数,表示A。  其中  1 <= N <= 100000  -10000 <= A[i] <=  10000输出格式  输出仅包含一个整数,表示你..

2021-05-23 19:03:18 146

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除