
Java
文章平均质量分 73
忧伤的肚腩
华中科技大学计算机专业在读
展开
-
Leetcode347. Top K Frequent Elements
思路一 hashmap + maxheap hashmap统计频率,maxheap从中选择k个元素, 代码(java) public class Solution { public List<Integer> topKFrequent(int[] nums, int k) { Map<Integer, Integer> map = ne...原创 2018-07-26 11:49:01 · 136 阅读 · 0 评论 -
使用队列实现stack
两个队列实现一个stack q1只保持一个元素即可, 多余的转换到q2当中 出队列元素,有两种情况, q1不为空, 直接出队列 如果连续出队列 q1可能为空, 需要q2的部分元素放到q1当中去, 说白了就是元素捣鼓来捣鼓去的问题即可 核心事项 将一个筒里面的元素捣鼓来捣鼓去 一个队列实现一个stack 没加入一个元素都是捣鼓捣鼓去就行,重置元素的基础顺序即可 ...原创 2019-05-23 16:45:10 · 357 阅读 · 0 评论 -
Leetcode 340 最长最多K个无重复字符的字符串长度
题目 Given a string, find the length of the longest substring T that contains at most k distinct characters. For example, Given s = “eceba” and k = 2, T is “ece” which its length is 3. 快慢指针 + HashMap 一...原创 2019-05-02 15:54:45 · 1608 阅读 · 0 评论 -
59. 螺旋打印情况
i 代表一圈,j 从用来上下左右移动,主要是控制 i 与j 的参数关系就ok了 ,另一个是注意如何初始化 从左上角到右上角 while(j<n-i-1) 从右上角到右下角 while(j<n-i-1) 从右下角到左下角 while(j>i) 从左下角到左上角 while(j>i) class Solution { public int[][] ...原创 2019-03-24 20:20:18 · 169 阅读 · 0 评论 -
HashMap
自己设计一个HashMap 采用桶+ 链地址法来实现一个HashMap, 设计链表类 设计桶类 ,包括一个头节点,head = new ListNode(-1,-1); hashmap , 桶类数组情况 ,ListNode[] buckets = new ListNode[], 基础数目就可以了,桶数组 class ListNode { ListNode next; i...原创 2019-02-17 13:40:32 · 155 阅读 · 0 评论 -
使用stack模拟队列
232. Implement Queue using Stacks 用stack 实现队列的基本功能,比如入队(队尾巴), 出队(在队头出现队列) s1作输入栈,逐个元素压栈,以此模拟队列元素的入队。直接入队列即可 如果s2不为空的话,直接pop(),直接弹出来的情况 如果为空的话,需要将s1中的值进行转过即可 ==helper的功能就是将元素从s1移动到s2 == 可以将helper代码放...原创 2018-10-08 20:53:39 · 221 阅读 · 0 评论 -
java中的异常
throw和throws的区别 相同:都是用于做异常的抛出处理的。 不同点: 使用的位置: throws 使用在函数上,throw使用在函数内 后面接受的内容的个数不同: throws 后跟的是异常类,可以跟多个,用逗号隔开。 (throws只声明异常类,不处理) throw 后跟异常对象。 ...原创 2018-10-14 17:38:55 · 105 阅读 · 0 评论 -
Edit distance(二维动态规划题目)
题目1 Edit Distance 传统动态规划问题,两个字符串不一样,对第一个字符每一个位置可以进行删除,修改或者增加,将第一个字符串改成第二个字符串,求最小的操作数 a) Insert a character b) Delete a character c) Replace a character 第一字符串长度为m, 长度为n; 方法: 可见要求DP[i+1][j+1],必须要知道二维矩阵中...原创 2018-09-22 11:45:22 · 149 阅读 · 0 评论 -
双亲委派机制
JVM双亲委派机制 JVM预定义的三种类型类加载器: 定义 类加载器(ClassLoader)是Java语言的一项创新,也是Java流行的一个重要原因。在类加载的第一阶段“加载”过程中,需要通过一个类的全限定名来获取定义此类的二进制字节流,完成这个动作的代码块就是类加载器。 启动(Bootstrap)类加载器:是用本地代码实现的类装入器,它负责将 <Java_Runtime_Home>...原创 2018-09-27 11:43:09 · 689 阅读 · 1 评论 -
Ugly Number II
丑数的定义: 因素分解后因子只包含2,3,5(由这三个数的组成,不一定要三个都用上,也可以使用多个相同的情况)的数 比如 10= 2*5, 给定一个数,找到第n个丑数 比如输入10,找到第10个丑数, Input: n = 10 Output: 12 Explanation: 1, 2, 3, 4, 5, 6, 8, 9, 10, 12 is the sequence of the ...原创 2018-09-07 15:09:41 · 107 阅读 · 0 评论 -
LeetCode 238. Product of Array Except Self
题目链接 Given an array nums of n integers where n > 1, return an array output such that output[i] is equal to the product of all the elements of nums except nums[i]. Example: Input: [1,2,3,4] Ou...原创 2018-07-28 11:39:36 · 118 阅读 · 0 评论 -
树+ 动态规划
树+ 动态规划 这种结局思路主要是 利用一个全局变量,然后加一个递归方法,递归方法求解初当前节点处满足题意的最大值情况,然后当前节点能够满足的最大值与目前得到的最大值做一个比较 全局变量 Max 调用递归方法 调用递归左右节点的情况 更新最大值的情况 return 返回当前节点满足的情况 路径最大和 124. Binary Tree Maximum Path Sum class Solutio...原创 2019-06-16 13:42:48 · 424 阅读 · 0 评论