自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

无关风月

手在键盘敲很轻~

  • 博客(264)
  • 资源 (6)
  • 收藏
  • 关注

原创 java集合详解

List接口的实现类ArrayList非线程安全,同样使用Fail-Fast机制允许包括 null 在内的所有元素其内部实现也是数组。删除元素会将后边位置的元素向前移动一位,最后一个置为null。当被添加的元素超出数组的容纳极限时,ArrayList会对内部数组进行一次“扩容”,从而可以添加新的元素,每次数组容量的增长大约是其原容量的1.5倍, 数组进行扩容时,会将老数组中的元素重新拷贝一份到新的数组中。 应用程序也可以使用ensureCapacity操作来增加ArrayList实例的容量,以减.

2022-05-22 23:37:17 352

原创 JVM 内存模型、垃圾回收

JVM内存模型、垃圾回收算法、垃圾收集器

2022-05-18 09:08:45 384

原创 JVM参数及调优

JVM控制参数、JVM调试命令、JVM调试工具、JVM调优案例

2022-05-18 09:03:19 896

原创 链表相关算法题

从尾到头打印链表https://lovezxm.blog.csdn.net/article/details/80781538链表合并https://leetcode-cn.com/problems/merge-two-sorted-lists/题目描述:将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。题解:方法一:递归递归地定义两个链表里的 merge 操作(忽略边界情况,比如空链表等):也就是说,两个链表头部值较小的一个节点与剩下元素的 m

2022-05-03 17:35:56 165

原创 罗振宇 知识就是力量:怎样成为一个不纠结的人

怎样成为一个不纠结的人

2022-01-03 22:56:36 385

原创 罗振宇2022“时间的朋友”跨年演讲 思维导图

罗振宇2022“时间的朋友”跨年演讲 思维导图

2022-01-03 19:27:29 706

翻译 使用Java枚举实现简单状态机

原文:https://www.baeldung.com/java-enum-simple-state-machine?spm=ata.21736010.0.0.9e8856d28q5ghb1、概述本文将介绍如何使用Java枚举实现状态机。我们也将对比说明该种方式与使用接口和实现类表示每种状态的优势所在。2、Java Enumsjava枚举是一种用于定义常量集合的特殊的类。此种方式有类型安全的实现和更好的可读性。举个例子,假如我们有个用于审批员工请假请求的HR软件系统。该请求经过团队负责人上报给部

2021-08-22 21:16:56 778 1

原创 Builder模式 和 Fluent Interface

连贯接口(fluent interfaces)不仅仅能提供 类型 method chaining 和 Builder模式的方法级联调用,更重要的是能限定方法调用的顺序。连贯接口不仅仅在提供API,其连贯性带来的可读性和可理解性,也是一种领域语言,是一种Internal DSL。本文将介绍,如何通过连贯接口来使用和实现Builder模式。...

2021-08-22 11:44:04 603 1

转载 创建型模式之--创建者模式

1、变化是永恒的制作奔驰、宝马的车辆模型,汽车的启动、停止、喇叭声音、引擎声音 先后顺序由客户控制。每个车都是一个产品。在CarModel中我们定义了一个setSequence方法, 车辆模型的这几个动作要如何排布, 是在这个ArrayList中定义的。 然后run()方法根据sequence定义的顺序完成指定的顺序动作。车辆模型抽象类public abstract class CarModel { /** * 汽车启动顺序 */ private List&

2021-06-27 22:16:59 173

原创 JVM运行时数据区

什么是Java虚拟机?为什么Java被称作是“平台无关的编程语言”?Java虚拟机是一个可以执行Java字节码的虚拟机进程。Java源文件被编译成能被Java虚拟机执行的字节码文件。一旦Java代码被编译为Java字节码,便可以在不同平台上的Java虚拟机上运行。不同平台用不同的JVM,因此JDK和JRE也不同Java代码是怎么运行的?Java代码被编译为Java字节码,在Java虚拟...

2020-02-24 09:52:58 840 3

原创 《黑客与画家》-读书笔记

作者是 硅谷创业之父 Paul Graham书中的黑客指的是优秀的程序员,不仅仅是通常意义上的黑客。保罗格雷厄姆,其人其事书里主要讨论黑客成长、黑客对世界的贡献以及编程语言和黑客工作方法等,有助于了解程序员、了解互联网的规则、了解这个时代。我们生活中的一切,都正在成为计算机。所以,如果想理解我们目前的世界以及其未来的动向,要多了解黑客的想法。保罗格雷厄姆创业公式:搭建原型。上线运营...

2020-02-15 18:01:07 751

原创 java多线程面试题这一篇就够了

创建多线程的方式java中的线程状态转换在java中wait和sleep方法的不同start() 和run() 方法多线程如何进行信息交互JMM volatile关键字sychronized关键字synchronized和Lock的区别AQSJava线程池技术及原理java并发包concurrent及常用的类生产者/消费者模式协程哲学家进餐问题ThreadLocal如何控制线程执行顺序Java如何实现线程安全一般线程和守护线程的区别

2019-12-29 20:07:14 610 1

原创 Just for today

Just for today 就为了今天 Just for today I will try to live through this day only and not tackle my whole life problem at once. I can do something for twelve hours that would appall me if I had to keep it up for a lifetime. 就为了今天,我将尽力只度过今天而不立刻去解决终身的问题。我能

2019-12-29 12:06:14 342 1

原创 To the Greatness of Small

阿里巴巴2018年韩国平昌冬奥会宣传片 《渺小中的伟大》【英文原文】99% of people think they are nobody.97% of companies are small c...

2019-12-29 11:16:04 411

原创 Linux常用命令手册

Linux系统的组成linux内核(linux 团队管理)shell:用户与内核交互的接口文件系统:ext3、ext4等。windows 有 fat32 、ntfs第三方应用软件Shell基本知识Shell是系统的用户界面,提供了用户与内核进行交互操作的一种接口(命令解释器)Shell可以执行:内部命令应用程序shell 脚本使用type命令可以区分内部命令和...

2019-12-22 22:47:20 818

原创 《如何让你爱的人爱上你》-读书笔记

樊登读书APP,听书笔记原作名: How to Make Anyone Fall in Love with Youlove is a verb.恋爱是什么?恋爱中的人会产生PEA苯乙胺分泌。苯乙胺和其他化学物质一样,都是在人体遇到了特定的刺激物之后产生的生理反应,而这个刺激物就是我们的潜意识。5~8岁的时候,生活中所发生的事情,会在大脑中产生一种叫做“潜意识铭刻”的现象。每个人的童年...

2019-12-08 17:33:52 1263

原创 Word2Vec、fastText、Glove训练词向量

Word2Vec环境:gensim 3.5.0python 3.6.1训练import loggingimport os.pathimport sysimport multiprocessingfrom gensim.corpora import WikiCorpusfrom gensim.models import Word2Vecfrom gensim.models.wo...

2019-05-18 20:28:15 2229

原创 iframe 标签内嵌 jupyter notebook

默认 jupyter notebook 的 HTTP Content-Security-Policy (CSP) 安全策略是不允许父类将 jupyter notebook 页面嵌入到 <frame>、<iframe>、<object>、<embed>或<applet> 中的。使用 <frame> 嵌入:<ifram...

2019-03-16 17:03:07 7594 5

转载 word2vec与相关应用

NLP相关任务自动摘要指代消解 小明放学了,妈妈去接【他】机器翻译 小心地滑->Slide carefully词性标注 heat(v.) water(n.) in(p.) a(det.) pot(n.)分词(中文,日文等) 大水沟/很/难/过主题识别文本分类NLP处理方法传统:基于规则现代:基于统计机器学习 HMM,CRF,SVM,LDA,C

2019-03-08 15:34:16 7582

原创 去除 360 浏览器 404页面 广告

大部分广告都可以手动关闭,比如一些资讯推荐404页面,”网页走丢了”页面充斥着大量垃圾广告!!屏蔽方法:“网页走丢了”页面文件,位于360浏览器安装目录Application文件夹,进入一个版本的目录。找到errorpage.zip文件(记得先备份),打开 se_errors.js 文件。搜索var sct = document.createElement(‘script’);...

2019-03-08 15:33:58 5428 3

原创 ValueError: signal only works in main thread

jupyter notebook 无法正常运行查看 notebook.log报错:ERROR:tornado.general:Uncaught exception in zmqstream callbackTraceback (most recent call last): File "/mnt/home2/zxm/anaconda3/lib/python3.6/site-packa...

2019-02-13 16:20:09 14499 9

原创 TypeError: __new__() got an unexpected keyword argument 'serialized_options'

使用 tensorflow报错:TypeError: new() got an unexpected keyword argument ‘serialized_options’解决:在终端上的 protoc 版本 与pycharm 中用conda 安装的protobuf版本不一样。然后在终端上进行proto文件编译,在pycharm上运行相关脚本,出现以上错误。在pycharm中调整p...

2019-01-18 19:38:14 9549 5

原创 AttributeError: module 'tensorflow.python.training.checkpointable' has no attribute 'CheckpointableB

使用 tensorflow报错:AttributeError: module ‘tensorflow.python.training.checkpointable’ has no attribute ‘CheckpointableBase’原因:升级或者安装 tensorflow 时,没有将老版本卸干净。conda uninstall tensorflowpip uninstall...

2019-01-18 19:25:30 10299

原创 AttributeError: module 'tensorflow.python.estimator.estimator_lib' has no attribute 'Exporter'

使用import tensorflow_hub as hub报错AttributeError: module ‘tensorflow.python.estimator.estimator_lib’ has no attribute ‘Exporter’解决:tensorflow>=1.7.0 才能用 tensorflow_hub需要先卸载老版本tensorflowcond...

2019-01-18 19:19:13 7213 1

原创 链表 奇数位升序,偶数位降序,调整使整体升序

头条一道面试题一个链表奇数位上升序,偶数位上降序,不用额外空间让这个链表整体升序1->8->3->6->5->4->7->2->9题解:这道题可以分成三步:首先根据奇数位和偶数位拆分成两个链表。然后对偶数链表进行反转。最后将两个有序链表进行合并。public class Main { public static void ...

2018-09-25 11:39:43 5109

原创 Trie 树(字典树)是什么

字典树(Trie)可以保存一些 字符串->值 的对应关系。 基本上,它跟 Java 的 HashMap 功能相同,都是 key-value 映射,只不过 Trie 的 key 只能是字符串。它的优点是:最大限度地减少无谓的字符串比较,查询效率比哈希表高。Trie的核心思想是空间换时间。利用字符串的公共前缀来降低查询时间的开销以达到提高效率的目的。查询的复杂度是O(len),le...

2018-09-02 11:48:58 452

原创 剑指offer-68.最长不含重复字符的子字符串

LeetCode 给定一个字符串,找出不含有重复字符的最长子串的长度。示例 1: 输入: “abcabcbb” 输出: 3 解释: 无重复字符的最长子串是 “abc”,其长度为 3。示例 2: 输入: “bbbbb” 输出: 1 解释: 无重复字符的最长子串是 “b”,其长度为 1。示例 3: 输入: “pwwkew” 输...

2018-08-26 13:57:57 2459

原创 剑指offer-67.把数字翻译成字符串

LeetCode题目描述 一条包含字母 A-Z 的消息通过以下方式进行了编码: ‘A’ -> 1 ‘B’ -> 2 … ‘Z’ -> 26给定一个只包含数字的非空字符串,请计算解码方法的总数。示例 1: 输入: “12” 输出: 2 解释: 它可以解码为 “AB”(1 2)或者 “L”(12)。示例 2: ...

2018-08-26 09:58:39 493

原创 剑指offer-66.剪绳子

LeetCode 题目描述把一根绳子剪成多段,并且使得每段的长度乘积最大。 n = 2 return 1 (2 = 1 + 1) n = 10 return 36 (10 = 3 + 3 + 4)题解: 方法一:贪心尽可能多剪长度为 3 的绳子,并且不允许有长度为 1 的绳子出现。如果出现了,就从已经切好长度为 3 的绳子中拿出一段与长度...

2018-08-25 22:06:06 630

原创 剑指offer-65.机器人的运动范围

牛客 题目描述 地上有一个m行和n列的方格。一个机器人从坐标0,0的格子开始移动,每一次只能向左,右,上,下四个方向移动一格,但是不能进入行坐标和列坐标的数位之和大于k的格子。 例如,当k为18时,机器人能够进入方格(35,37),因为3+5+3+7 = 18。但是,它不能进入方格(35,38),因为3+5+3+8 = 19。请问该机器人能够达到多少个格子?题解:深度搜索四个方向,注...

2018-08-25 21:02:18 208

原创 剑指offer-64.矩阵中的路径

牛客 题目描述 请设计一个函数,用来判断在一个矩阵中是否存在一条包含某字符串所有字符的路径。路径可以从矩阵中的任意一个格子开始,每一步可以在矩阵中向左,向右,向上,向下移动一个格子。如果一条路径经过了矩阵中的某一个格子,则之后不能再次进入这个格子。 例如 a b c e s f c s a d e e 这样的3 X 4 矩阵中包含一条字符串”bcced”的路径,但是矩阵中不包含”abcb”路...

2018-08-25 16:27:50 206

原创 剑指offer-63.滑动窗口的最大值

牛客 题目描述 给定一个数组和滑动窗口的大小,找出所有滑动窗口里数值的最大值。例如,如果输入数组{2,3,4,2,6,2,5,1}及滑动窗口的大小3,那么一共存在6个滑动窗口,他们的最大值分别为{4,4,6,6,6,5}; 针对数组{2,3,4,2,6,2,5,1}的滑动窗口有以下6个: {[2,3,4],2,6,2,5,1}, {2,[3,4,2],6,2,5,1}, {2,3,[4,2,...

2018-08-24 22:13:33 218

原创 剑指offer-62.数据流中的中位数

牛客 题目描述 如何得到一个数据流中的中位数?如果从数据流中读出奇数个数值,那么中位数就是所有数值排序之后位于中间的数值。如果从数据流中读出偶数个数值,那么中位数就是所有数值排序之后中间两个数的平均值。我们使用Insert()方法读取数据流,使用GetMedian()方法获取当前读取数据的中位数。题解: 为了保证插入新数据和取中位数的时间效率都高效,使用大顶堆+小顶堆,用大顶堆存左半部...

2018-08-24 21:28:36 241

原创 剑指offer-61.二叉搜索树的第k个结点

牛客这里写链接内容题目描述 给定一棵二叉搜索树,请找出其中的第k小的结点。例如, (5,3,7,2,4,6,8) 中,按结点数值大小顺序第三小结点的值为4。题解; 由于是二叉搜索树,其中序遍历序列就是从小到大的序列,所以中序遍历二叉搜索树,用一个全局遍历记录访问结点的次数,如果等于 k , 则当前遍历的结点就是 第 k 小的结点,返回。public class Solutio...

2018-08-24 17:48:55 199

原创 剑指offer-60.序列化二叉树

牛客 题目描述 请实现两个函数,分别用来序列化和反序列化二叉树题解:所谓序列化指的是遍历二叉树为字符串;所谓反序列化指的是依据字符串重新构造成二叉树。依据前序遍历序列来序列化二叉树,因为前序遍历序列是从根结点开始的。当在遍历二叉树时碰到Null指针时,这些Null指针被序列化为一个特殊的字符“#”。 另外,结点之间的数值用“ ”隔开。public class Solutio...

2018-08-24 17:14:14 207

原创 剑指offer-59.按之字形顺序打印二叉树

牛客题目描述 请实现一个函数按照之字形打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从右至左的顺序打印,第三行按照从左到右的顺序打印,其他行以此类推。题解: 在二叉树层次遍历的基础上修改,增设两个指针:p1 指向当前行的最右节点p2 向下一行的最右节点遍历时,每当输出一个节点后,将把此节点的左右孩子压入队列,压入队列时,让 p2 跟踪入队的节点,然后判断 刚输出...

2018-08-24 16:01:35 200

原创 剑指offer-58.对称的二叉树

牛客 题目描述 请实现一个函数,用来判断一颗二叉树是不是对称的。注意,如果一个二叉树同此二叉树的镜像是同样的,定义其为对称的。题解: 递归求解 分别比较左右子树如果两个子树都为null ,则返回 true; 如果一个为空一个不为空,则返回 false; 如果两个子树的值不相等,则返回false; 否则分别比较,他们的左右子树,和右左子树,是否满足条件。class ...

2018-08-24 14:23:00 219

原创 剑指offer-57.二叉树的下一个结点

牛客 题目描述 给定一个二叉树和其中的一个结点,请找出中序遍历顺序的下一个结点并且返回。注意,树中的结点不仅包含左右子结点,同时包含指向父结点的指针。public class TreeLinkNode { int val; TreeLinkNode left = null; TreeLinkNode right = null; TreeLinkNode n...

2018-08-24 13:55:52 165

原创 剑指offer-56.删除链表中重复的结点

牛客 题目描述 在一个排序的链表中,存在重复的结点,请删除该链表中重复的结点,重复的结点不保留,返回链表头指针。 例如,链表1->2->3->3->4->4->5 处理后为 1->2->5题解:方法一:循环要用一个指针 p 指向当前处理的结点,指针temp 向前移动,直到移动到不相同的结点。 由于需要把相同的结点都删除,所以需要用...

2018-08-24 10:23:50 250

原创 剑指offer-55.链表中环的入口结点

牛客题目描述 给一个链表,若其中包含环,请找出该链表的环的入口结点,否则,输出null。题解: 1、如何判断是否存在环? 使用追赶的方法,设定两个指针slow、fast,从头指针开始,每次分别前进1步、2步。如存在环,则两者相遇;如不存在环,fast遇到NULL退出。2、如何找出该链表的环的入口结点? 有定理:碰撞点p到连接点的距离=头指针到连接点的距离 因此,分别从碰撞点、...

2018-08-23 22:19:49 201

Java之23种设计模式解析

Java23种设计模式详细解析,源自尚硅谷 宋红康 玩转java系列

2018-05-20

周阳老师 MySQL高级 脑图 .mmap+pdf

尚硅谷 周阳老师 MySQL高级 脑图 .mmap+pdf 版,知识梳理必备

2018-05-07

jar转exe工具 exe4j ,附注册码

jar转exe工具 exe4j ,附注册码

2017-02-24

微信背后的产品观-—-张小龙

微信之父张小龙经典演讲164页PPT:《微信背后的产品观》,2012年7月24日,张小龙8小时演讲

2017-01-13

UML面向对象

面向对象基础,UML以及各种类型图的介绍

2016-11-16

Apache POI jar包,poi-bin-3.14.zip

JAVA实现数据库数据导入/导出到Excel(POI),所使用的jar包

2016-05-16

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除