- 博客(9)
- 收藏
- 关注
原创 Java最大子序和
// if(sum > max ) max = sum ;// - 1 -2 4 这种情况,先让前面的全为0if(sum< 0 ) sum = 0;public int maxSubArray(int[] nums) { int sum = 0; int max = Integer.MIN_VALUE; for(int i =0;i<nums.length;i++){ sum = sum + nu.
2020-12-29 19:45:59 81
原创 回味链表、字符串、数组
回文链表第一步找到中心节点。使用的方法是快慢指针的方法。需要把节点分为奇数和偶数。最开始的判断 if(head == null || head.next == null){ return true; }定义指针fast为快指针,slow为慢指针,pre为slow前面的指针,作用是用来隔绝中间节点//定义快慢指针ListNode fast = head , slow = head ,pre = null;while(fast !=null &
2020-12-28 16:28:56 59
原创 Java中关于二分查找的问题
第一题:搜索插入的位置二分查找的时间复杂度为O(log n)先设定左侧下标left,右侧下标right,再计算中间下标mid每次根据nums[mid]和target之间的大小进行判断,相等则直接返回下标,nums[mid]<target则left右移,nums[mid]>target则right左移查找结束如果没有相等则返回left另外的解法:...
2020-12-25 00:28:30 179
原创 Java中关于树的总结
第一道题:二叉树的深度:树的遍历分为:DFS 、 BFS求树的深度需要遍历树的所有节点。使用递归的方法树的深度= max(左树深度,右数深度)+1;计算左子树的深度: maxdepth(root.left)计算右子树的深度:maxdepth(root.right)return( maxdepth(root.left),maxdepth(root.right))+1;第二道题:平衡二叉树:定义:如果某二叉树中任意节点的左右子树的深度相差不超过1,那么它就是一棵平衡二叉树。返回值:1.
2020-12-21 22:08:37 335 2
原创 意外发现Set接口的功能----去重
int [] a = new int[]{1,1,2,3 }; HashSet<Integer> hashSet = new HashSet<>(); for(int x :a){ hashSet.add(x); } System.out.println(hashSet);//[1, 2, 3]会自动帮你去除重复...
2020-12-20 17:03:42 133
原创 Java中的Map的遍历
第一种遍历的方法:使用增强for循环遍历key、 value。 HashMap<String, String> map = new HashMap<>(); map.put("name", "cookie"); map.put("age", "18"); map.put("sex", "女"); for (String key: map.keySet()){ System.out
2020-12-19 23:47:37 73 2
原创 Queue和Deque的总结以及Stack的总结
Collection|Queue|Deque|LinkedList实现的继承关系如上,父类(接口)在上Queue: 队列我常用的方法: offer()、 poll()、 peek()Deque:双向队列我常用的方法: push() 、pop()、 peek()
2020-12-18 19:34:41 118 1
原创 100% 解决 VMware Workstation 与 Hyper-V 不兼容。请先从系统中移除 Hyper-V 角色
以管理员身份运行命令提示符;执行命令:bcdedit /set hypervisorlaunchtype off重启系统,运行vm即可。若要开启Hyper-v:1:bcdedit / set hypervisorlaunchtype auto
2020-12-01 16:20:16 6076 5
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人