java
爱码士王小刀
这个作者很懒,什么都没留下…
展开
-
Map.Entry 类使用简介
你是否已经对每次从Map中取得关键字然后再取得相应的值感觉厌倦?使用Map.Entry类,你可以得到在同一时间得到所有的信息。标准的Map访问方法如下:Set keys = map.keySet( );if(keys != null) {Iterator iterator = keys.iterator( );while(iterator.hasNext( )) {Object ke...转载 2018-11-05 14:56:38 · 162 阅读 · 0 评论 -
剑指offer java实现合集(9)第41~45题
41.和为S的连续正数序列滑动窗口,如果小于目标值右端则向右滑动,大于目标值,左端向右滑动import java.util.ArrayList;public class Solution { public ArrayList<ArrayList<Integer> > FindContinuousSequence(int sum) { Arra...原创 2019-04-22 14:29:43 · 121 阅读 · 0 评论 -
剑指offer java实现合集(10)第46~50题
46.孩子们的游戏public class Solution { public int LastRemaining_Solution(int n, int m) { if(n<1||m<1){ return -1; } int num[] = new int[n]; int count ...原创 2019-04-22 15:44:29 · 175 阅读 · 0 评论 -
剑指offer java实现合集(11)第51~55题
51.构建乘积数组借助两个数组lefts和rights,一个记录B[i]值的左乘结果A[0]*A[1]*...*A[i-1],一个记录B[i]值的右乘结果A[i+1]*A[i+2]*...*A[n-1],然后B[i]=lefts[i]*rights[i];import java.util.ArrayList;public class Solution { public int[] ...原创 2019-04-22 17:26:03 · 128 阅读 · 0 评论 -
剑指offer java实现合集(2)第6~10题
6.旋转数组的最小数字这道题有两道思路,一种是常规的二分查找,也是出题人想要考察的。用最后一位和中间值比较大小,从而确定当前旋转的状态,然后逐步向下缩小范围。做法如下:import java.util.ArrayList;public class Solution { public int minNumberInRotateArray(int [] array) {...原创 2019-04-18 16:26:51 · 142 阅读 · 0 评论 -
剑指offer java实现合集(3)第11~15题
11.二进制中1的个数这个题很有意思,用到的知识点是:任何一个数和比他小一的数相与都会减少一个1的特性。public class Solution { public int NumberOf1(int n) { int res = 0; while(n!=0){ n=n&(n-1); res++...原创 2019-04-18 19:16:45 · 109 阅读 · 0 评论 -
剑指offer java实现合集(4)第16~20题
16.合并两个排序的链表依次比较两个链表当前节点的值,小的就插入到后年,如果有任何一条链表走到了结尾,就直接加载另外一条链表剩余的节点。注意要提前保存头结点。public class Solution { public ListNode Merge(ListNode list1,ListNode list2) { ListNode first = new Lis...原创 2019-04-19 20:11:17 · 133 阅读 · 0 评论 -
剑指offer java实现合集(12)第56~60题
56.删除链表中重复的节点public class Solution { public ListNode deleteDuplication(ListNode pHead) { ListNode first = new ListNode(-1); first.next = pHead; ListNode newHead = fi...原创 2019-04-25 13:06:21 · 107 阅读 · 0 评论 -
top n 问题(java)
给定一个数组,取出其中最小的K个数。适合大数据场景。package practice;import java.util.ArrayList;import java.util.Comparator;import java.util.PriorityQueue;public class Topk { public static void main(String[] ar...原创 2019-05-09 17:10:28 · 852 阅读 · 0 评论 -
剑指offer java实现合集(8)第36~40题
36.两个链表的第一个公共节点两个链表的节点同步移动,如果走到链表尾,则继续走另外一个链表,这样当两个节点相遇时,他们都走了len(表1)+len(表2)-公共段长度public class Solution { public ListNode FindFirstCommonNode(ListNode pHead1, ListNode pHead2) { List...原创 2019-04-22 13:19:09 · 180 阅读 · 0 评论 -
java常见异常类型
Java 异常顶层父类Throwable,并实现了Serializable接口由Throwable派生出来的异常类有两种Error类和Exception类Error:错误,代表JVM本身的错误,处理程序运行环境方面的异常,不能通过代码处理。比如OutOfMemoryError、AWTErrorException:异常,程序运行时发生,可以被Java异常处理机制使用比如IOExc...原创 2019-04-17 15:09:35 · 570 阅读 · 0 评论 -
StringTokenizer的使用方法
1. 构造函数。1. StringTokenizer(String str) :构造一个用来解析str的StringTokenizer对象。java默认的分隔符是“空格”、“制表符(‘\t’)”、“换行符(‘\n’)”、“回车符(‘\r’)”。2. StringTokenizer(String str, String delim) :构造一个用来解析str的StringTokenizer对...转载 2018-12-13 11:03:27 · 705 阅读 · 0 评论 -
接口和抽象类的区别
接口与抽象类的区别:1 两者表达的概念不一样。抽象类是一类事物的高度聚合,与子类的关系属于“是”的关系;而接口是定义行为规范,因此对于实现接口的子类来说,相对于接口来说,是“行为需要按照接口来完成”。2 抽象类在定义类型方法的时候,可以给出方法的实现部分,也可以不给出;而对于接口来说,其中所定义的方法都不能给出实现部分。3 继承类对于两者所涉及方法的实现是不同的。继承类对于抽象类所定义...转载 2019-01-22 17:46:30 · 105 阅读 · 0 评论 -
java实现排序算法,快排,堆排序,冒泡,归并排序
package practice;import java.util.Arrays;public class sortfamily { public static void main(String[]args){ int []num = {1,4,3,2,5,6,7,8,9}; sortfamily it = new sortfamily();//...原创 2019-04-16 15:59:17 · 214 阅读 · 0 评论 -
剑指offer java实现合集(1)第1~5题
1.二维数组中的查找因为数组是从左往右递增,从上往下递增,所以我们从左下角开始寻找,如果比目标值小就向右寻找,比目标值大就向上寻找。public class Solution { public boolean Find(int target, int [][] array) { int i = 0; int j = array.length-1;...原创 2019-04-16 20:09:55 · 182 阅读 · 0 评论 -
剑指offer java实现合集(5)第21~25题
21.栈的压入,弹出按照压入数组压入栈,每次对最顶的元素进行能判断,如果等于弹出数组当中的数值,则弹出,弹出数组的指针向后移动一位,当弹出数组的所有元素弹出后,如果栈为空,则说明相匹配。import java.util.ArrayList;import java.util.*;public class Solution { public boolean IsPopOrder(i...原创 2019-04-21 14:04:32 · 141 阅读 · 0 评论 -
剑指offer java实现合集(6)第26~30题
26.二叉搜索树与双向链表模仿中序遍历的思路,但是这次是从右向左进行。public class Solution { TreeNode temp = null; public TreeNode Convert(TreeNode pRootOfTree) { if(pRootOfTree==null){ return null...原创 2019-04-21 19:46:53 · 92 阅读 · 0 评论 -
剑指offer java实现合集(7)第31~35题
31.整数中1出现的个数相当于计算一个数中出现的个数,依次相加即可。public class Solution { public int NumberOf1Between1AndN_Solution(int n) { int count = 0; for(int i =1;i<=n;i++){ int num = get...原创 2019-04-22 00:25:58 · 145 阅读 · 0 评论 -
mr二次排序 带注释
关于二次排序主要涉及到这么几个东西:在0.20.0以前使用的是setPartitionerClasssetOutputkeyComparatorClasssetOutputValueGroupingComparator在0.20.0以后使用是job.setPartitionerClass(Partitioner p);job.setSortComparatorC...转载 2019-04-14 15:33:48 · 457 阅读 · 0 评论 -
剑指offer java实现合集(13)第61~66题
61.二叉搜索树的第K个节点借助二叉搜索树的特性import java.util.*;public class Solution { ArrayList<TreeNode> res = new ArrayList(); TreeNode KthNode(TreeNode pRoot, int k) { if(pRoot==null){...原创 2019-05-07 19:13:39 · 100 阅读 · 0 评论