![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
NH4L
love
展开
-
Java实现判断链表是否存在环
Java实现判断链表是否存在环题目存在环,2节点不存在环节点数据结构public class ListNode { public int val; public ListNode next; public ListNode() {} public ListNode(int val) { this.val = val; } public ListNode(int val, ListNode next) { this.val = val; this.next原创 2021-02-05 21:16:12 · 424 阅读 · 0 评论 -
Java实现子数组最大和
Java实现子数组最大和题目输入:[1,12,-5,-6,50,3], k = 4输出:51实现方法—滑动窗口一次循环,首先取前k个算出和,后取从第k个开始遍历减去滑动窗口第一个,然后加入下一个,更新最大值最后返回最大子数组和 // 子数组最大平均数 滑动窗口 //时间复杂度:O(n) //空间复杂度:O(1) private static int findMaxAverage_1(int[] nums, int k) { int sum = 0;原创 2021-02-05 21:04:44 · 417 阅读 · 0 评论 -
Java实现子数组最大平均数
Java实现子数组最大平均数题目输入:[1,12,-5,-6,50,3], k = 4输出:12.75解释:最大平均数 (12-5-6+50)/4 = 51/4 = 12.75实现方法—滑动窗口一次循环,首先取前k个算出和,后取从第k个开始遍历减去滑动窗口第一个,然后加入下一个,更新最大值然后得到平均值 // 子数组最大平均数 滑动窗口 //时间复杂度:O(n) //空间复杂度:O(1) private static double findMaxAverage_1(原创 2021-02-05 21:03:07 · 540 阅读 · 0 评论 -
Java实现求相交链表交点
Java实现求相交链表交点题目介绍返回值为8的节点无交点,返回null节点数据结构public class ListNode { public int val; public ListNode next; public ListNode() {} public ListNode(int val) { this.val = val; } public ListNode(int val, ListNode next) { this.val = val; th原创 2021-02-05 20:56:34 · 294 阅读 · 0 评论 -
Java实现判断二叉树是否为平衡二叉树
Java实现判断二叉树是否为平衡二叉树两种方法:自顶向下、自顶向上实现方法1、自顶向下height方法为判断该节点高度当出现左右子树的高度差大于一时返回false每个节点判断一遍高度 //自顶向下 //时间复杂度:O(n²) //空间复杂度:O(n) private static boolean isBalanced(TreeNode root) { if (root == null) return true; i原创 2021-01-30 13:43:23 · 286 阅读 · 0 评论 -
Java实现二叉树自底向上的层序遍历
Java实现二叉树自底向上的层序遍历例如,给定二叉树 [3,9,20,null,null,15,7],返回结果二叉树结构class TreeNode { int val; TreeNode left; TreeNode right; TreeNode() {} TreeNode(int val) { this.val = val; } TreeNode(int val, TreeNode left, TreeNode right) {原创 2021-01-30 11:29:32 · 646 阅读 · 0 评论 -
Java实现求二叉树深度
Java实现求二叉树深度两种方法,DFS(递归)和BFS二叉树结构class TreeNode { int val; TreeNode left; TreeNode right; TreeNode() {} TreeNode(int val) { this.val = val; } TreeNode(int val, TreeNode left, TreeNode right) { this.val = val; this原创 2021-01-30 10:52:38 · 334 阅读 · 0 评论 -
Java实现判断二叉树是否镜像对称
Java实现判断二叉树是否镜像对称该二叉树镜像对称该二叉树不对称两种方法1、递归2、中序遍历迭代二叉树结构class TreeNode { int val; TreeNode left; TreeNode right; TreeNode() {} TreeNode(int val) { this.val = val; } TreeNode(int val, TreeNode left, TreeNode right) { th原创 2021-01-29 15:57:05 · 504 阅读 · 0 评论 -
Java实现判断两颗二叉树是否相同(递归)
Java实现判断两颗二叉树是否相同二叉树结构class TreeNode { int val; TreeNode left; TreeNode right; TreeNode() {} TreeNode(int val) { this.val = val; } TreeNode(int val, TreeNode left, TreeNode right) { this.val = val; this.left = left原创 2021-01-29 15:47:02 · 540 阅读 · 0 评论 -
红黑树算法(JAVA)的实现(包含swing界面演示程序)
因为算法课设需要,要实现红黑树的实验及具体演示步骤。源码参考链接:https://blog.csdn.net/cdnight/article/details/10583177一、红黑树特点(1)每个节点或者是黑色,或者是红色。(2)根节点是黑色。(3)每个叶子节点(NIL)是黑色。(4)如果一个节点是红色的,则它的子节点必须是黑色的。(5)从一个节点到该节点的子孙节点的所有路径上包含...转载 2020-01-16 10:17:23 · 363 阅读 · 1 评论