每日一题leetcode
z_jary
这个作者很懒,什么都没留下…
展开
-
leetcode146.LRU缓存机制
leetcode146.LRU缓存机制: 运用你所掌握的数据结构,设计和实现一个 LRU (最近最少使用) 缓存机制。它应该支持以下操作: 获取数据 get 和 写入数据 put 。 获取数据 get(key) - 如果密钥 (key) 存在于缓存中,则获取密钥的值(总是正数),否则返回 -1。 写入数据 put(key, value) - 如果密钥不存在,则写入其数据值。当缓存容量达到上限时,...原创 2019-02-15 16:57:53 · 167 阅读 · 0 评论 -
leetcode1108-1111、1114-1117
1108.IP地址无效化 public String defangIPaddr(String address) { StringBuffer res = new StringBuffer(); for(int i = 0;i < address.length();i++){ char c = address.charAt(i); if(c !=...原创 2019-08-29 13:37:36 · 222 阅读 · 0 评论 -
leetcode1093-1096、1103-1106
周赛142 大样本统计 public double[] sampleStats(int[] count) { double min = 256,max = 0,avg,mode = 0,mid = 0,mmaxnum = 0,sum = 0,c = 0; for(int i = 0;i < 256;i++) { if(count[i] != 0){ ...原创 2019-08-14 13:37:32 · 177 阅读 · 0 评论 -
动态规划练习题(一)
leetcode 300.最长上升子序列 给定一个无序的整数数组,找到其中最长上升子序列的长度。 示例: 输入: [10,9,2,5,3,7,101,18] 输出: 4 解释: 最长的上升子序列是 [2,3,7,101],它的长度是 4。 说明: 可能会有多种最长上升子序列的组合,你只需要输出对应的长度即可。 你算法的时间复杂度应该为 O(n2) 。 进阶: 你能将算法的时间复杂度降低到 O(n ...原创 2019-03-12 13:39:05 · 176 阅读 · 0 评论 -
leetcode 432.全O(1)的数据结构
实现一个数据结构支持以下操作: 1.Inc(key) - 插入一个新的值为 1 的 key。或者使一个存在的 key 增加一,保证 key 不为空字符串。 2.Dec(key) - 如果这个 key 的值是 1,那么把他从数据结构中移除掉。否者使一个存在的 key 值减一。如果这个 key 不存在,这个函数不做任何事情。key 保证不为空字符串。 3.GetMaxKey() - 返回 key 中值...原创 2019-03-11 11:26:04 · 1248 阅读 · 0 评论 -
leetcode list链表练习题(二)
leetcode 61.旋转链表 给定一个链表,旋转链表,将链表每个节点向右移动 k 个位置,其中 k 是非负数。 示例 1: 输入: 1-&gt;2-&gt;3-&gt;4-&gt;5-&gt;NULL, k = 2 输出: 4-&gt;5-&gt;1-&gt;2-&gt;3-&gt;NULL 解释: 向右旋转 1 步: 5-&gt原创 2019-03-04 17:20:35 · 269 阅读 · 0 评论 -
leetcode list链表练习题(一)
链表的数据结构 /** Definition for singly-linked list. public class ListNode { int val; ListNode next; ListNode(int x) { val = x; } } */ leetcode 2.两数相加 给出两个 非空 的链表用来表示两个非负的整数。其中,它们各自的位数是按照 逆序 的方式存...原创 2019-03-04 15:52:24 · 257 阅读 · 0 评论 -
leetcode binary tree二叉树练习题(二)
leetcode 230.二叉树搜索树中第k小的元素 给定一个二叉搜索树,编写一个函数 kthSmallest 来查找其中第 k 个最小的元素。 说明: 你可以假设 k 总是有效的,1 ≤ k ≤ 二叉搜索树元素个数。 示例 : 输入: root = [5,3,6,2,4,null,null,1], k = 3 5 / \ 3 6 / \ ...原创 2019-03-04 13:44:06 · 239 阅读 · 0 评论 -
leetcode binary tree二叉树练习题(一)
二叉树的数据结构: class TreeNode { int val; TreeNode left; TreeNode right; TreeNode(int x) { val = x; } } 构造二叉树的函数: public TreeNode buildTree(int[] x, int index){ if(x == null) ...原创 2019-03-04 10:09:16 · 163 阅读 · 0 评论 -
leetcode 128.最长连续序列
给定一个未排序的整数数组,找出最长连续序列的长度。 要求算法的时间复杂度为 O(n)。 示例: 输入: [100, 4, 200, 1, 3, 2] 输出: 4 解释: 最长连续序列是 [1, 2, 3, 4]。它的长度为 4。 解题思路:要求时间复杂度为O(n),第一时间想到哈希,遍历数组的同时保存当前元素所在的最长连续序列长度,取其中最大值。遍历时出现以下几种情况 情况1:该元素已存在,则跳过...原创 2019-03-06 17:24:38 · 129 阅读 · 0 评论 -
leetcode1122-1125
数组的相对排序 public int[] relativeSortArray(int[] arr1, int[] arr2) { HashMap<Integer,Integer> count = new HashMap<>(); for(int i:arr1){ if(count.containsKey(i)){ ...原创 2019-08-29 13:40:30 · 182 阅读 · 0 评论