- 博客(6)
- 收藏
- 关注
原创 归并排序and逆序对
归并:利用分治思想,对数组进行二分分割一直分到每部分剩下一个元素,然后左右合并合并的时候利用一个临时数组比较方便static void mergeSort(int[]ar,int l,int r) { if(l>=r) return; int mid=(l+r)/2; mergeSort(ar,l,mid); mergeSort(ar,mid+1,r); int[] temp=new int[r-l+1]; int index=0,begin=l,end.
2020-10-30 14:41:43 103
原创 LeetCode845. 数组中的最长山脉
我们把数组 A 中符合下列属性的任意连续子数组 B 称为 “山脉”:B.length >= 3存在 0 < i < B.length - 1 使得 B[0] < B[1] < … B[i-1] < B[i] > B[i+1] > … > B[B.length - 1](注意:B 可以是 A 的任意子数组,包括整个数组 A。)给出一个整数数组 A,返回最长 “山脉” 的长度。如果不含有 “山脉” 则返回 0。示例 1:输入:[2,1,4,7.
2020-10-25 21:39:01 88
原创 二分查找
基本二分:public int search(int[] nums, int target) { int l=0; int r=nums.length-1; while(l<=r) { int mid=l+(r-l)/2; if(nums[mid]==target) return mid; else if(nums[mid]>t
2020-10-14 22:10:26 84
原创 LeetCode75. 颜色分类每日一题
给定一个包含红色、白色和蓝色,一共 n 个元素的数组,原地对它们进行排序,使得相同颜色的元素相邻,并按照红色、白色、蓝色顺序排列。此题中,我们使用整数 0、 1 和 2 分别表示红色、白色和蓝色。注意:不能使用代码库中的排序函数来解决这道题。示例:输入: [2,0,2,1,1,0]输出: [0,0,1,1,2,2]来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/sort-colors著作权归领扣网络所有。商业转载请联系官方授权,非商业.
2020-10-07 11:09:35 63
原创 Java中>>与>>>的区别
>>与>>>都属于位运算符,两者区别为 : 右移时,所填充的高位不同>>右移时用符号位填充高位 符号位:正数符号位为0; 负数符号位为1>>>右移用0填充高位<<左移低位补0没有<<<...
2020-10-05 21:45:13 149
原创 公倍数公约数
最大公约数:辗转相除法 static int gcd(int a,int b) { return b==0?a:gcd(b,a%b); }最小公倍数:(a*b)/gcd(a,b);
2020-10-04 17:53:15 63
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人