上一页 1 ··· 24 25 26 27 28 29 30 31 32 ··· 36 下一页
摘要: 深度优先搜索 class Solution { public boolean isSymmetric(TreeNode root) { return isSymmetric(root.left, root.right); } /** * 后序遍历 * 从根节点的左右孩子开始递归 */ public 阅读全文
posted @ 2021-10-27 18:36 振袖秋枫问红叶 阅读(27) 评论(0) 推荐(0)
摘要: 深度优先搜索 class Solution { public boolean isSameTree(TreeNode p, TreeNode q) { /** * 除非p和q共同为null或者都不为null,否则返回false */ if (p == null || q == null){ retu 阅读全文
posted @ 2021-10-27 17:03 振袖秋枫问红叶 阅读(38) 评论(0) 推荐(0)
摘要: 深度优先搜索 class Solution { List list = new LinkedList(); public List<Integer> inorderTraversal(TreeNode root) { if (root == null){ return list; } inorder 阅读全文
posted @ 2021-10-27 16:42 振袖秋枫问红叶 阅读(47) 评论(0) 推荐(0)
摘要: 深度优先搜索 class Solution { public int maxDepth(TreeNode root) { if (root == null){ return 0; } /** * 根节点的高度就是二叉树的最大深度,使用前序遍历求的就是深度,使用后序遍历求的是高度 * 本题可以通过后序 阅读全文
posted @ 2021-10-27 16:29 振袖秋枫问红叶 阅读(41) 评论(0) 推荐(0)
摘要: 常用树结构 二分搜索树 平衡二分搜索树(AVL)、红黑树 堆;并查集 线段树;Trie(字典树、前缀树) 二叉树基础 和链表一样,二叉树是一种动态数据结构,数据存储在“节点”(Node)中,left指针指向左孩子,right指针指向右孩子 二叉树具有唯一根节点,每个节点最多有两个孩子,没有孩子的节点 阅读全文
posted @ 2021-10-27 15:20 振袖秋枫问红叶 阅读(59) 评论(0) 推荐(0)
摘要: 二分查找 class Solution { public int shipWithinDays(int[] weights, int days) { /** * 最小运输量为所有货物中最重的那个,否则大于它的货物永远不能运载 */ int minLoad = Arrays.stream(weight 阅读全文
posted @ 2021-10-25 22:50 振袖秋枫问红叶 阅读(36) 评论(0) 推荐(0)
摘要: 二分查找 class Solution { public int minEatingSpeed(int[] piles, int h) { /** * Arrays.stream(arr).max().getAsInt()方法获取数组最大值 */ int minSpeed = 1; int maxS 阅读全文
posted @ 2021-10-25 21:52 振袖秋枫问红叶 阅读(54) 评论(0) 推荐(0)
摘要: upper 查找大于target的第一个元素 public class Algorithm { public static void main(String[] args) { Integer[] arr = {1, 1, 3, 3, 5, 5}; for (int i = 0; i <= 6; i 阅读全文
posted @ 2021-10-25 21:00 振袖秋枫问红叶 阅读(68) 评论(0) 推荐(0)
摘要: 对于有序数组,才能使用二分查找法,需要先排序,常应用于需要多次查找的情况 选定一个标定点,将数组分为左右两个区间,时间复杂度为O(logn) 递归写法 public class Algorithm { public static void main(String[] args) { Integer[ 阅读全文
posted @ 2021-10-24 20:25 振袖秋枫问红叶 阅读(65) 评论(0) 推荐(0)
摘要: public class Algorithm { public static void main(String[] args) { Integer[] arr = {1,2,3,4,5,6,7}; System.out.println(new BinarySearch().search(arr, 4 阅读全文
posted @ 2021-10-24 16:05 振袖秋枫问红叶 阅读(22) 评论(0) 推荐(0)
上一页 1 ··· 24 25 26 27 28 29 30 31 32 ··· 36 下一页