上一页 1 2 3 4 5 6 7 8 ··· 21 下一页
摘要: import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.LinkedList; import java.util.Queue; /** 阅读全文
posted @ 2021-12-16 12:17 Peterxiazhen 阅读(232) 评论(0) 推荐(0) 编辑
摘要: 1、Lambda表达式的基本语法为: (parameters) -> expression 或者 (parameters) -> {statements;} 2、Lambda可以看成是:函数式接口一个具体实现的实例(函数式接口就是只定义一个抽象方法的接口) public static void pr 阅读全文
posted @ 2021-12-04 14:57 Peterxiazhen 阅读(38) 评论(0) 推荐(0) 编辑
摘要: nums = IntStream.of(nums) .boxed() .sorted((o1, o2) -> (Math.abs(o2) - Math.abs(o1))) .mapToInt(Integer::intValue).toArray(); 阅读全文
posted @ 2021-12-03 13:34 Peterxiazhen 阅读(218) 评论(0) 推荐(0) 编辑
摘要: 总结一下: 1、数组中的数不重复,最简单的情况 1、最普通的二分查找:leetcode704 /** * 二分查找:nums 中的所有元素是不重复的 */ class Solution { public int search(int[] nums, int target) { int left = 阅读全文
posted @ 2021-11-21 17:31 Peterxiazhen 阅读(82) 评论(0) 推荐(0) 编辑
摘要: // LRU缓存机制 // 使用哈希表+双向链表 // 双向链表的头部是最近使用过的,双向链表的尾部是最久未使用过的 class LRUCache { // 双向链表的节点 class DoublyLinkedNode { int key; int value; DoublyLinkedNode p 阅读全文
posted @ 2021-11-11 19:36 Peterxiazhen 阅读(26) 评论(0) 推荐(0) 编辑
摘要: 1、寻找链表的中点 // 找到链表的中点(快慢指针) public ListNode getMidNode(ListNode head) { ListNode slow = head; ListNode fast = head; while (fast.next != null && fast.ne 阅读全文
posted @ 2021-11-10 10:21 Peterxiazhen 阅读(42) 评论(0) 推荐(0) 编辑
摘要: 注意一些关于链表的常用操作 1、寻找链表的中间节点(快慢指针) 2、合并两个有序链表(哨兵节点的使用) /** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * L 阅读全文
posted @ 2021-11-04 13:28 Peterxiazhen 阅读(58) 评论(0) 推荐(0) 编辑
摘要: 给定一个二叉树,判断它是否是高度平衡的二叉树。 本题中,一棵高度平衡二叉树定义为: 一个二叉树每个节点 的左右两个子树的高度差的绝对值不超过 1 。 递归的做法: 对于根节点来说,要判断根节点的左右子树是不是平衡的二叉树以及,左右子树的高度差的绝对值是否不超过1 /** * Definition f 阅读全文
posted @ 2021-10-24 15:20 Peterxiazhen 阅读(24) 评论(0) 推荐(0) 编辑
摘要: class Solution { public int longestCommonSubsequence(String text1, String text2) { if (text1.length() == 0 || text2.length() == 0) return 0; int len1 阅读全文
posted @ 2021-10-24 12:14 Peterxiazhen 阅读(28) 评论(0) 推荐(0) 编辑
摘要: 链接 class Solution31 { public void nextPermutation(int[] nums) { if (nums == null || nums.length == 0) return; int len = nums.length; // 从后往前找到第一个递增对 i 阅读全文
posted @ 2021-10-10 11:20 Peterxiazhen 阅读(23) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 8 ··· 21 下一页