- 博客(24)
- 资源 (11)
- 收藏
- 关注
原创 Java求最大公约数以及最小公倍数
求解两个数的最大公约数,一般使用辗转相除法。例如整数a和整数b,用其中较大的数除以较小的数,得商和余数。如果余数为零,那么最大公约数即为b;否则将被除数赋值给a,余数赋值给b,继续进行除法运算。求解两个数的最小公倍数:两个数的乘积等于其最小公倍数和最大公约数的乘积!!!这里写代码片...
2018-06-17 16:03:16 295
原创 生产者消费者模型
以吃苹果味模型1、基于循环队列的生产者消费者模型苹果:class Apple{ int[] array; int head;//表示下一个要写的位置 int tail;//表示下一个要写的位置 public Apple(int[] array){ this.array = array; tail = 0; ...
2018-05-15 18:58:50 165
原创 二叉树非递归遍历
二叉树数据结构public class TreeNode{ int val; TreeNode left; TreeNode right; TreeNode(int value){ val = value; }}1、前序遍历递归实现代码/** 递归实现前序遍历 */ public void preOrder(Tree...
2018-05-13 11:27:46 192
原创 算法之LRU和LFU算法
在地址映射过程中,若在页面中发现所要访问的页面不在内存中,则产生缺页中断。当发生缺页中断时,如果操作系统内存中没有空闲页面,则操作系统必须在内存选择一个页面将其移出内存,以便为即将调入的页面让出空间。而用来选择淘汰哪一页的规则叫做**页面置换算法。**
2018-04-19 11:44:28 2121
原创 算法二叉搜索树的插入删除操作
1、二叉搜索树的节点添加操作public class Solution { /** * @param root: The root of the binary search tree. * @param node: insert this node into the binary search tree * @return: The root of the...
2018-04-19 11:24:31 685
原创 Linux 常用指令
目录操作命令: cd :进入某个目录 ls:显示当前目录下的文件及目录 pwd:显示当前路径 mkdir:创建目录文件操作命令 rename:重命名 mv:移动文件 cp:复制文件 find:查找文件 rm:删除文件文件打包压缩命令 tar:解压文件基本网络操作命令 wget:下载文件 ping:测试网络连通性 ifconfig: 查看网络配置信息 t...
2018-04-10 10:12:26 380
原创 Java Collections.sort()实现List排序的默认方法和自定义方法
1、第一种是model类实现Comparable接口,重写重写int compareTo(Object o)方法public class StudentDTO implements Comparable{ private String name; private int age;public String getName(){ return name;}public voi...
2018-04-10 09:38:00 762
原创 删除单向链表中的重复节点
题目:在一个排序的链表中,存在重复的结点,请删除该链表中重复的结点,重复的结点不保留,返回链表头指针。如 输入链表:1->2->3->3->4->4->5 ,处理后为:1->2->5解析 :要想删除重复节点有两个关键点需要解决:确定新的头结点。因为对于原链表来说,头结点可能是重复节点,所以也可能会被删除如何保证
2018-03-02 10:20:25 1549
原创 算法之八大排序算法
1、直接插入排序插入排序是一种最简单直观的排序算法,它的工作原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入。 public static void InsertSort(int[] array){ if(array == null || array.length == 0) return ; ...
2018-02-27 06:31:27 861 1
原创 设计模式之观察者模式
观察者定义了一种一对多的关系,多个观察者同时坚挺某一个主题对象,当主题对象发生变化后,会通知所有的观察者对象,使他们能够自己更新自己,很多框架使用,比如zookeeper。其中Java.util.observer接口定义了观察者模式,同时电一抽象观察者和抽象主题,进行解耦和,都依赖于抽象而不依赖于具体,是的各自的变化不会影响另一方。
2017-11-12 15:13:06 552
原创 设计模式之代理模式
代理模式:For example :比如某歌星知名度非常高,很多单位都想请他去唱歌,但是呢,总不能他又要唱歌又要给自己接活吧,一般的都会雇佣一个经济人,这里的经济人他就是一个代理。如果有人想请该歌星去唱歌,那么需要直接联系的人是歌星的经济人,而不是直接找歌星,找到该经纪人以后谈好价钱,然后歌星再来唱歌,唱完歌以后,可能还需要与经纪人之间进行一些后续事物的处理
2017-11-11 22:00:12 618
原创 设计模式之工厂模式(Java)
设计模式是一套反复使用的、多数人知晓的、经过分类编目的、代码设计经验总结。使用设计模式为了提高代码的可重用性,让代码更容易被他人理解,保证代码的可靠性。一、工厂模式概念用工厂方法代替new操作来得到一个实例化对象,工厂模式包括简单工厂模式、工厂方法模式和抽象工厂模式,可以认为简单工厂模式是工厂方法模式的特例,抽象工厂模式是工厂方法模式的扩展。 项目中的应用: 在软件系统中经常面临着“对象”的创建
2017-11-11 17:12:17 603
转载 设计模式之策略模式
策略模式属于对象的行为模式。其用意是针对一组算法,将每一个算法封装到具有共同接口的独立的类中,从而使得它们可以相互替换。策略模式使得算法可以在不影响到客户端的情况下发生变化。
2017-11-08 10:46:30 455
原创 设计模式之责任链模式
责任链模式是一种对象的行为模式。在该责任链模式中,创建了一条引用链,每一个对象中都包含下一个对象的引用。当处理客户端请求时,请求会在这个链上传递,直到链上的某一个对象决定处理此请求。发出这个请求的客户端并不知道链上的哪一个对象最终处理这个请求,这使得系统可以在不影响客户端的情况下动态地重新组织和分配责任。
2017-11-08 10:38:23 466
原创 设计模式之单例模式(Java)
设计模式是一套反复使用的、多数人知晓的、经过分类编目的、代码设计经验总结。使用设计模式为了提高代码的可重用性,让代码更容易被他人理解,保证代码的可靠性。单例模式的概念及特点: java中单例模式是一种常见的设计模式,单例模式的写法有好几种,这里主要介绍两种:懒汉式单例、饿汉式单例。 单例模式有以下特点: 1、单例类只能有一个实例。 2、单例类必须自己创建自己的唯一实例。 3
2017-11-08 10:36:24 526
原创 Java开发——反射机制
前言:在面向对象的世界里,万事万物皆对象。但是在java语言中,静态的成员、普通数据类型除外,静态成员属于类,而不是对象,而普通数据类型有对应的包装类来弥补它。类是不是对象呢?类是(哪个类的对象呢?)谁的对象呢?类是对象,类是java.lang.Class类的实例对象一、反射的概念:主要是指程序可以访问,检测和修改它本身状态或行为的一种能力,并能根据自身行为的状态和结果,调整或修改...
2017-10-22 17:17:23 526 1
原创 为什么重写equals()就一定要重写hashCode()方法?
如果涉及使用对象作为key,那么key的对象都必须实现hashCode和equals方法。hashCode和equals方法持续自根类Object,若是你用自定义的类算作key的话,就需要同时覆写equals办法和hashCode方法,因为我们java的集合中判断两个对象是否相等,是根据hashCode和equals这个俩个方法。规则是先判断两个对象的hashCode是否相等,如果不相等,认为两个对
2017-10-21 20:56:45 7586 28
原创 JDK源码学习之集合HashMap、Hashtable、WeakHashMap比较
先上一张Java 集合框图: HashMap:public class HashMap<K,V> extends AbstractMap<K,V> implements Map<K,V>, Cloneable, Serializable Hashtable:public class Hashtable<K,V> extends Dictionary<K,V> implements
2017-10-21 20:48:04 266
转载 JDK源码学习之HashMap扩容机制resize()
虽然在hashmap的原理里面有这段,但是这个单独拿出来讲rehash或者resize()也是极好的。什么时候扩容:(是指的Hash数组的扩容)当向容器添加元素的时候,会判断当前容器的元素个数,如果大于等于阈值—即当前数组的长度乘以加载因子的值的时候,就要自动扩容啦。扩容(resize)就是重新计算容量,向HashMap对象里不停的添加元素,而HashMap对象内部的数组无法装载更多...
2017-10-21 18:18:19 254
原创 JDK源码学习之集合框架HashMap
前言:先上Java集合框架框图,以对其整体把握 概述本文将解析HashMap的工作原理,put()和get()方法的过程是如何实现的,equals()和hashCode()的都有什么作用,HashMap的大小超过了负载因子(load factor)定义的容量,怎么办?即HashMap是如何扩容的? 先看下面程序的基本操作:Map map = new HashMa...
2017-10-21 16:42:51 202 1
原创 柱形图中求最大四边形面积
题目:输入N个非负整数,分别代表宽度为1,高度为整数值得柱子,从柱状图里找出最大四边形的面积。要求时间复杂度为O(n),空间复杂度为O(n)举例:输入数组{1,2,3,1,2,3,1,1,1,1},柱状图如图所示,最大四边形的面积为10 对于图中的任意一条柱形,若是求以该柱形的高度为高的最大四边形的面积,需要知道该四边形的边界,该最大四边形的左边界是左方向第一个小于该柱形高
2017-10-20 19:59:06 552
license intel parallel studio xe 2015 for linux or wins
2019-01-28
Intel Parallel Studio XE 2015(附破解license)
2017-12-18
mybatis逆向生成javaBean_generatorSqlmapCustom.zip
2017-10-21
fastdfs_client-1.25.jar
2017-10-19
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人