javase
帮我消消黑眼圈!
敬畏每一行代码
展开
-
单向链表java实现以及相关操作
干货:一文弄懂链表结构,以后再也别问我什么是链表数据结构啦!直接上代码package singleLenkedList;import java.util.Stack;public class MySingleLinkedList { public static void main(String[] args) {// 先创建节点 Node h1=new Node(1,"唐僧","和尚"); Node h2 =new Node(...原创 2020-11-12 22:23:18 · 128 阅读 · 0 评论 -
[面试]——深入理解JVM学习笔记
引今天周五,工作不算忙,人都走的差不多了,学习不能停,不管是在csdn,还是腾讯云社区经常看到王磊大神的博客,他的jvm系列的文章真的写的不错,值得深扣,看不进去书,那就站在巨人的肩膀上,肯定看的更远!!!JVM是Java Virtual Machine的缩写,中文翻译为Java虚拟机,JVM是用来解析和运行Java程序的。一、jvm的主要组成部分类加载器(ClassLo...转载 2019-05-10 20:02:23 · 1245 阅读 · 1 评论 -
23种设计模式--单例模式
来自: 知乎作者:Sunshine·He(高富帅的主页)文章地址:https://zhuanlan.zhihu.com/p/612579181.前言在Java开发过程中,很多场景下都会碰到或要用到单例模式,在设计模式里也是经常作为指导学习的热门模式之一,相信每位开发同事都用到过。为了更好地理解,重新学习了单例模式,并写了本篇文章,希望能帮助到你,也请各位大神能多多指教。...转载 2019-05-14 22:11:07 · 633 阅读 · 0 评论 -
[面试]二叉搜索树(bst)——java代码实现
天气越来越热了,很快就到和太阳肩并肩的季节了,今天上班很累,本来不想打开电脑,鉴于高同学面试被问的一脸懵逼,拼了老命low一眼,不算亏,然后洗洗,睡个好觉做个好梦,明日は元気いっぱいです。一、简介二叉排序树的查找过程和次优二叉树类似,通常采取二叉链表作为二叉排序树的存储结构。中序遍历二叉排序树可得到一个关键字的有序序列,一个无序序列可以通过构造一棵二叉排序树变成一个有序序列...转载 2019-05-05 20:56:44 · 996 阅读 · 0 评论 -
漫画算法——红黑树
五一假期浪了三天,学习是什么东东?,今早起床看到一篇不错的文章,分享给大家,祝大家五一最后一天假期快乐!!!传送门: 漫画算法:什么是红黑树? ...转载 2019-05-04 11:26:26 · 976 阅读 · 0 评论 -
选择排序
前言 选择排序(Selection sort)是一种简单直观的排序算法。它的工作原理是每一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,然后,再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾。以此类推,直到全部待排序的数据元素排完。 选择排序是不稳定的排序...原创 2019-04-15 08:57:07 · 3590 阅读 · 0 评论 -
插入排序
1. 插入排序的基本思想 每步将一个待排序的记录,按其关键码值的大小插入前面已经排序的文件中适当位置上,直到全部插入完为止。2. 使用插入排序升序排列一个数组import java.util.Arrays;public class TestInsertSort { publ...原创 2019-04-14 21:14:34 · 128 阅读 · 0 评论 -
[精华集成] 归并排序 图解原理 一步到位
归并排序(MERGE-SORT)是建立在归并操作上的一种有效的排序算法,该算法是采用分治法(Divide and Conquer)的一个非常典型的应用。归并排序的核心思想是将两个有序的数列合并成一个大的有序的序列。通过递归,层层合并,即为归并。分治法将问题分(divide)成一些小的问题...原创 2019-04-02 21:06:10 · 744 阅读 · 0 评论 -
设计模式——迭代器模式
在面向对象编程里,迭代器模式是一种设计模式,是一种最简单也最常见的设计模式。它可以让用户透过特定的接口巡访容器中的每一个元素而不用了解底层的实现。 优点: &n...原创 2019-04-08 08:53:59 · 573 阅读 · 0 评论 -
干货:一文弄懂链表结构,以后再也别问我什么是链表数据结构啦!
链表 [Linked List]:链表是由一组不必相连【不必相连:可以连续也可以不连续】的内存结构 【节点】,按特定的顺序链接在一起的抽象数据类型。链表常用的有 3 类: 单链表、双向链表、循环链表。链表的核心操作集有 3 种:插入、删除、查找【遍历】。![链表](https://img-blog.csdnimg.cn/20190401211228214.jpg?x-oss-process=im...原创 2019-04-01 21:22:25 · 8385 阅读 · 1 评论 -
创建两个线程,其中一个输出1-52,另外一个输出A-Z。输出格式要求:12A 34B 56C 78D 依次类推
import java.util.concurrent.locks.Condition;import java.util.concurrent.locks.ReentrantLock;public class Test2 {public static void main(String[] args) {ReentrantLock r1=new ReentrantLock(); //定义一个...原创 2019-02-18 19:28:22 · 7999 阅读 · 0 评论 -
面试必备,快速排序
public class QuickSort11 { public static void main(String[] args) { int[] arr = {5,3,12,34,22,3,5,6,8,3,2,4,0,44,123,44}; quickSort(arr,0,arr.length-1); for (int i = 0; i < arr.leng...原创 2019-03-31 15:25:36 · 874 阅读 · 0 评论 -
启动3个线程打印递增的数字, 线程1先打印1,2,3,4,5 然后是线程2打印6,7,8,9,10 然后是线程3打印11,12,13,14,15.接着再由线程1打印16,17,18,19,20....
启动3个线程打印递增的数字, 线程1先打印1,2,3,4,5 然后是线程2打印6,7,8,9,10 然后是线程3打印11,12,13,14,15.接着再由线程1打印16,17,18,19,20…依次类推, 直到打印到60。提示:定义一个同步方法,在方法中使用循环的方式输出连续的5个数字,方法执行前,可以通过标记的方式判断是否是当前线程应该执行,如果是,则执行输出逻辑,如果不是,则wait进入等待...原创 2019-03-30 11:52:34 · 11002 阅读 · 3 评论 -
[面试] HashMap,Hashtable, ConcurrentHashMap的区别,此文足以.
前言 今天一个干java的朋友想跳槽,找了一家公司去面试,给面试官用HashMap,Hashtable, ConcurrentHashMap的区别这个问题给干蒙圈了,要是我去我估计也是一样的结果,知识这个东西忘得比学的快,今天下班还算早,就上网上看了看,整理了一下,希望能给即将去面试的老铁门带来帮助吧....原创 2019-04-03 20:53:31 · 1057 阅读 · 0 评论 -
常见的IO流及其分类(清晰简洁版)
一. 字节流 主要操作byte类型数据,以byte数组为准,主要操作类是OutputStream类和InputStream类。 1.节点流 FileInputStream FileOutputStream(以文件为数据源和目的地) ByteArrayInputStream ByteArrayOutputStream(以字节数组为数据源和...原创 2019-03-14 19:16:36 · 2196 阅读 · 0 评论 -
JDBC事务控制
什么是事务张三给李四转账1000元1张三转出10002李四转入1000以上两步 要么同时成功 要么同时失败 这两步是不能分割的数据库操作逻辑上不可分割的多条sql语句组成的整体 该整体中所有的sql语句要么全部成功 要么全部失败通过关键字: rollback ,commit来控制事务的特性1原子性 事务是最小的单位 不能继续分割2一致性 事务提交之前和提交之后 数据要保...原创 2019-02-21 10:51:28 · 287 阅读 · 0 评论