![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法学习
Vermouth_su
这个作者很懒,什么都没留下…
展开
-
子数组的最大累加和问题
题目链接public class Solution { /** * max sum of the subarray * @param arr int整型一维数组 the array * @return int整型 */ public int maxsumofSubarray (int[] arr) { // write code here if(arr.length==0) return 0;原创 2021-06-29 20:15:13 · 174 阅读 · 0 评论 -
树算法复习
1.树的最大深度递归public class Solution { /** * * @param root TreeNode类 * @return int整型 */ public int maxDepth (TreeNode root) { // write code here if(root==null) return 0; return Math.max(maxDepth(root原创 2021-06-29 19:59:05 · 196 阅读 · 0 评论 -
归并排序——递归、非递归、小和
1,递归 public void mergeSort(int[] arr){ if(arr==null || arr.length<2) return; sort1(arr,0,arr.length-1); } public void sort1(int[] arr,int l,int r){ if(l>=r) return; int mid=l+((r-l)>>1);原创 2021-03-21 21:19:42 · 66 阅读 · 0 评论 -
异或——交换、奇数次数、最右的1
1.2.设一个变量res异或每一个数3.a&((~a)+1)4.5.求二进制1的个数 public int bit1counts(int n){ int count=0; while(n!=0){ int rightOne=n&((~n)+1); count++; n^=rightOne; }原创 2021-03-20 23:03:06 · 135 阅读 · 0 评论 -
算法系列——二分法
目录1.有序数组,查找某个值2.有序数组,找满足>=value的最左位置3.有序数组,找满足<=value的最右位置4.局部最小值——二分法不止用法有序数组上1.有序数组,查找某个值2.有序数组,找满足>=value的最左位置 @Test public void test01(){ int[] arr={1,2,2,2,2,2,3,3,3,3,3,3,3,3,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4.原创 2021-03-20 22:22:00 · 114 阅读 · 0 评论 -
算法学习: (1)归并 (2)求小和 (3)求逆序对数目
目录1.归并排序2.小和3.降序对1.归并排序public class Merge { public static void mergeSort(int[] arr,int l,int r){ if(l==r) return; int mid=l+((r-l)>>1); mergeSort(arr,l,mid); mergeSort(arr,mid+1,r); merge(arr,原创 2020-08-01 15:07:30 · 137 阅读 · 0 评论