5 MeteorChenBo

尚未进行身份认证

我要认证

在校大学生,交通地理信息方向

等级
TA的排名 3w+

秋招准备之——MySQL复习

秋招复习笔记系列目录(不断更新中):1.数据结构全系列2.计算机网络知识整理(一)3.计算机网络知识整理(二)4. Java虚拟机知识整理5.计算机操作系统6.深入理解HashMap7.深入理解ConcurrentHashMap8.MySQL继续来分享自己的整理的MySQL的知识。本篇博客主要是自己在看 《高性能MySQL》 的过程中做的笔记,其中夹杂着一些对一些知识的深入的解释,这些解释大多是从别人的博客中搬运过来综合整理后得到的,这部分内容的来源会在文中标注出来,建议大家支持原作者

2020-07-16 21:45:07

秋招准备之——深入理解ConcurrentHashMap(JDK1.8)

秋招复习笔记系列目录(不断更新中):1.数据结构全系列2.计算机网络知识整理(一)3.计算机网络知识整理(二)4. Java虚拟机知识整理5.计算机操作系统6.完全理解HashMap7.完全理解ConcurrentHashMap一、前言以前感觉HashMap难懂,直到我看了ConcurrentHashMap。。。不过,等真的读懂了源码,不得不感叹,Doug Lea大爷还是你大爷,看的过程中,不时惊呼:原来是这样啊!这也太牛了!好了,首先介绍一下,ConcurrentHashMap是一个

2020-06-25 13:53:34

秋招准备之——深入理解HashMap(JDK1.8)

秋招复习笔记系列目录(不断更新中):1.数据结构全系列2.计算机网络知识整理(一)3.计算机网络知识整理(二)4. Java虚拟机知识整理5.计算机操作系统6.完全理解HashMap一、介绍1.1 前言最近在研究Java集合的内容,本来想像前面那样将整个集合都放在一篇博客里面,但发现HashMap、ConcurrentHashMap还有LinkedConcurrentHashMap里面的知识太多太多了,而且拜读了源码以后,才真正地感受到了集合设计者的厉害,所以还是把这三个集合单独列出来

2020-06-24 22:31:40

秋招准备之——计算机操作系统

秋招复习笔记系列目录(不断更新中):1.计算机网络知识整理(一)2.计算机网络知识整理(二)3.Java虚拟机知识整理4. 计算机操作系统知识整理一、操作系统概述1.1 操作系统的基本概念1. 概念操作系统是指控制和管理整个计算机系统的硬件和软件资源,并合理地组织调度计算机的工作和资源的分配,以提供给用户和其他软件方便的接口和环境的程序集合。2. 操作系统的特征两个最基本的特征:并发: 指两个或多个事件在同一时间间隔内发生。操作系统的并发性是指计算机系统中同时存在多个运行着的程序

2020-06-13 21:35:10

秋招准备之——Java虚拟机

前段时间看了周志明老师的《深入理解Java虚拟机》,加上自己在看的过程中查找的一些资料和理解,做了一些笔记,今天乘着复习,在这里分享一下。一、Java内存区域与内存溢出异常1.运行时数据区域1.程序计数器: 当前线程所执行字节码的行号指示器,线程私有2.虚拟机栈: 描述方法执行的线程内存模型,每个方法执行的时候,会同步创建一个帧栈存储局部变量等信息。与方法中的局部变量紧密相关,局部变量会存放在局部变量表中,在编译期间,局部变量表所需的空间就确定了。局部变量中的存储空间以局部变量槽表示,long和

2020-06-12 20:29:03

多线程之银行排队叫号系统的实现

前段时间参加了一下招行卡中心的实习笔试,最后有一道选做题是如何设计一个银行排队叫号系统,当时自己没复习好,而且时间也不太够了,就大概胡扯了一段。今天又查了查资料实现了一下,记录一下。一、问题描述去银行办理业务时,银行有固定的柜台数量,然后不定时有客户来银行办理业务。来的时候,客户先取号,再等着排队叫号。为了保证公平,叫号时要按照排队顺序叫,不能插队。二、问题分析这其实是一个典型的生产者消费...

2020-04-12 18:28:21

秋招准备之——计算机网络知识整理(二)

上一篇博客总结了计算机网络的物理层、数据链路层和网络层。这里继续总结运输层和应用层。五、运输层1. 概述1.1 作用1.网络层完成了主机之间端到端的通信,但运输层完成了主机上不同应用程序(进程)之间端到端的通信。2.对收到的报文进行差错检测。(网络层只是检测头部,运输层还要检测数据部分)。1.2端口1.作用: 网络层将数据交付的主机后,区分不同应用程序以准确交付到应用程序。2...

2020-04-10 12:14:25

秋招准备之——计算机网络知识整理(一)

这两天在看谢希仁老师的《计算机网络》,通过思维导图做了一些笔记,在这里记录一下,也分享给有需要的同学。整篇博客大多是摘抄整理原书,其中加了自己的一些理解,如有错误,欢迎指出。因为书还没看完,会持续更新,更新完以后会将思维导图的链接放出来。一、概述1.计算机网络的定义计算机网络由结点(包括电脑、路由器、交换机等)和链路组成。网络之间连接起来,构成互联网2.互联网的组成互联网由边缘部分和核心...

2020-04-05 22:26:49

适合新手的SSM框架练手项目——秒杀系统

最近把SSM框架的基础知识撸了一遍,跟着github上的这个开源项目 ,实现了一下秒杀系统,并对这个项目中存在的问题进行了 一些小小的改进,记录一下,如果是刚学SSM框架希望找个小项目 练手的,可以跟着这个项目来练练手。一、项目功能及涉及知识点项目的整体业务流程如下...

2020-03-25 12:25:31

自己动手写数据结构(12)——平衡二叉树(详解结点删除)

在上一篇博客中实现了二叉排序树。我们发现,查找的效率取决于树的高度。比如对于{62,88,58,47,35,73,51,99,37,93}这样的数组,利用上一篇博客实现的插入,得到的二叉排序树为:但当我们改变一下数组中元素的顺序,比如改成{35,37,47,51,58,62,73,88},那得到的二叉排序树就为:不难看出,这时的二叉排序树退化成了一个线性表。这时已经完全没有了二叉排序树的优...

2020-01-01 17:08:42

自己动手写数据结构(11)——二叉排序树

上一篇博客写了有序表查找,其中三种方法的基本思想都是二分查找,他们的查找的时间复杂度均为 O(logn),我们发现有序表的查找效率挺高的了,但是插入效率很低,插入的时间复杂度仍然是O(n),为了提高插入效率,有人提出了二叉排序树的数据结构。一、定义二叉排序树,又称二叉查找树。它或者是一颗空树,或者是一棵具有下列性质的二叉树:若它的左子树不空,则左子树上所有结点的值均小于它的根节点的值;若...

2019-12-28 21:20:58

自己动手写数据结构(10)——有序表查找(详解斐波那契查找)

这一节开始学习查找方面的知识。首先来说最简单的查找——有序表查找。其前提是给定的数据表是排序好的。其中最常见的有序表的查找有三种:折半查找、插值查找、斐波那契查找。他们的思想都是二分查找,所不用的是每个二分点的位置不同。一、折半查找1.原理二分查找的原理很简单,对于一个有序表,每次查找的时候,先去看中间记录,如果查找值和中间记录的关键字相等,则查找成功;如果查找值小于中间记录,则在中间记录的...

2019-12-26 16:58:10

自己动手写数据结构(9)——图的拓扑排序和关键路径

一、拓扑排序1.定义AOV网: 在一个表示工程的有向图中,用顶点表示活动,用弧表示活动之间的优先关系,这样的有向图为顶点表示活动的网,成为AOV(Activity On Vertex Network)网。拓扑序列 对一个有向无环图G进行拓扑排序,是将G中所有顶点排成一个线性序列,使得图中任意一对顶点u和v,若边<u,v>∈E(G),则u在线性序列中出现在v之前。通常,这样的线性...

2019-12-24 11:01:44

自己动手写数据结构(8)——图的最短路径

一、相关定义最短路径定义: 从图的某一顶点(起点)出发,到达另一顶点(终点)的路径中,路径权值之和最小的路径最短路径。二、Floyd算法1.简介Floy的算法是最简单最容易实现的最短路径算法(只求权值不记录路径的话只需要5行代码),其解决的是多源最短路径的问题,即通过该算法,可以计算得到图中每两点之间的最短路径。2.原理在一个图中,要使两点间的距离缩短,唯一的办法是引进中间点。但是应该...

2019-12-17 22:17:02

自己动手写数据结构(7)——图的最小生成树

自己动手写数据结构总目录:https://blog.csdn.net/qq_31709249/article/details/102962377该文章的源代码仓库为:Java:https://github.com/MeteorCh/DataStructure/blob/master/Java/DataStructure/src/Graph/MiniSpanningTree.java一、相...

2019-12-12 21:48:13

自己动手写数据结构(6)——图及其五种存储结构

一、图的相关定义1.图的定义图(Graph)是由顶点的有穷非空集合和顶点之间的边的集合构成的,通常表示为G<V,E>。其中,G表示一个图,V是图G中顶点的集合,E是图G中边的集合。其中边分为有向和无向,故图也分为有向图和无向图。在树中,只能表示一对多的关系。而图中,任意两个顶点之间都可以连接,故图可以表示一对多的关系。2.图的遍历图有两种遍历方式,一种是深度优先遍历,一种则是广...

2019-11-30 22:08:10

自己动手写数据结构(5)——树

上一节介绍了二叉树,这一节简要介绍一下树。我们知道二叉树,每个节点至多有2个孩子,而普通的树则没有了这种限制,每个节点可以有多个孩子。一、树中的相关定义1.度:节点拥有的孩子个数是节点的度,树的度为树中节点度的最大值。2.高度:树的最大层次为树的高度或深度。3.森林:m(m≥0)可互不相交的树的集合。二、树的存储结构树有三种存储结构:双亲表示法、孩子表示法、孩子兄弟表示法1.双亲...

2019-11-22 22:23:45

自己动手写数据结构(4)——二叉树

自己动手写数据结构总目录:https://blog.csdn.net/qq_31709249/article/details/102962377二叉树的主要应用在后面要介绍的搜索树、赫夫曼编码等领域。本文先介绍二叉树的基本定义及存储结构。一、二叉树定义1.二叉树定义: 二叉树是每个结点最多有两个子树的树结构,我这里不啰嗦。2.满二叉树: 所有的中间节点都有两个孩子,所有的叶子节点都在同一...

2019-11-15 21:40:51

自己动手写数据结构(3)——串

一、串的定义串(String)是由零个或多个字符组成的有限序列,又叫字符串。我们平常叫字符串,而不叫串hh。串的字符数目称为串的长度,长度为0的串称为空串。二、串的操作及存储1.串的比较:两个字符串比较大小时,遵循以下规则:①从左至右一位一位比较,如果相同,则继续下一位,如果不同,则谁的ASCII大谁的字符串就大②如果比较到其中一者已经结束了,还没有分出大小,则长度长的字符串大2.串...

2019-11-12 21:41:49

如何在DialogFragment中使用fragment

最近开发的App需要同时适配平板和手机,一个页面用Activity在手机上显示很好看,但是如果同样在平板上用Activity显示就会被拉伸的很难看,所以想到在手机上用Activity显示,而在平板上用DialogFragment显示界面。这时候问题来了,为了代码的复用性,怎么让Activity和DialogFragment中共用一份代码?想起来郭霖大神的书中提到(在此再次强烈安利一波郭霖大神的书,...

2018-09-02 21:39:56

查看更多

勋章 我的勋章
  • 签到新秀
    签到新秀
    累计签到获取,不积跬步,无以至千里,继续坚持!
  • 阅读者勋章Lv2
    阅读者勋章Lv2
    授予在CSDN APP累计阅读博文达到7天的你,是你的坚持与努力,使你超越了昨天的自己。
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv1
    勤写标兵Lv1
    授予每个自然周发布1篇到3篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。
  • 学习力
    学习力
    《原力计划【第二季】》第一期主题勋章 ,第一期活动已经结束啦,小伙伴们可以去参加第二期打卡挑战活动获取更多勋章哦。