自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

yushen

努力就是一条捷径

  • 博客(38)
  • 资源 (1)
  • 收藏
  • 关注

转载 GIT撤销修改

git 撤销本地修改:1.本地修改,未add,未commitgit checkout xxxxxx ——xxxxxx:要撤销修改的文件名2.本地修改,已经add,未commitgit reset HEAD xxxxxx ——撤销add操作,代码不会变3.本地修改,已经add,已经commitgit reset --hard HEAD^ ——回到上次commit的状态...

2019-08-27 11:00:47 197

原创 解决git提交报错please tell me who you are

今天提交项目突然提示报错:unable to auto-detect email address:无法自动检测电子邮件地址需要手动配置一下自己的邮件地址1.《全局配置》可根据提示配置:git config --global user.eamil "[email protected]"git config --global user.name "xxxxx"2.《单独项目...

2019-08-22 10:22:45 741

原创 461. 汉明距离

两个整数之间的汉明距离指的是这两个数字对应二进制位不同的位置的数目。给出两个整数 x 和 y,计算它们之间的汉明距离。注意:0 ≤ x, y < 231.示例:输入: x = 1, y = 4输出: 2解释:1 (0 0 0 1)4 (0 1 0 0) ↑ ↑上面的箭头指出了对应二进制位不同的位置。解决思路:<位运算&g...

2019-08-01 13:59:54 180

原创 hashmap的大小为什么指定为2的幂次

JDK8中HashMap的大小默认初始值,以及后面的扩容操作,都指定,大小必须是2的幂次所以为什么呢?HashMap中指定哈希桶数组大小为2的幂次,主要是在两方面进行优化:1,扩容:大小指定为2的幂次,当哈希桶扩大2倍时,只需要进行左移操作,众所周知,位操作的速度还是超快的2,Hash算法的均匀分布,减少哈希碰撞几率:16或者其他2的幂,Length-1的值是后面的二进...

2019-06-06 10:50:27 2418

原创 Redis数据类型之字符串

1 Redis数据结构之字符串 Reds自己构建了一种名为简单动态字符串的抽象啊类型(simple dynamic string,SDS),并将SDS用作Redis的默认字符串表示。 在Redis中,字符串的键值对在底层都是由SDS实现的,比如,SET key "helloworld" 那么Redis在数据库中创建一个新的键值对,其中,键值对的键是一个字符串对象,底层实现是一个保...

2019-04-25 17:53:47 176

原创 136. 只出现一次的数字

给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。说明:你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗?示例 1:输入: [2,2,1]输出: 1示例2:输入: [4,1,2,1,2]输出: 4解法效率:解题思路:数组中只有一个出现一次的数字,其他的数字都是出现过两次。...

2019-04-25 17:25:51 123

原创 leetcode344:反转字符串JAVA实现

编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组char[]的形式给出。不要给另外的数组分配额外的空间,你必须原地修改输入数组、使用 O(1) 的额外空间解决这一问题。你可以假设数组中的所有字符都是ASCII码表中的可打印字符。示例 1:输入:["h","e","l","l","o"]输出:["o","l","l","e","h"]示例 2:...

2019-04-12 18:03:40 219

原创 leetcode-228. 汇总区间

 给定一个无重复元素的有序整数数组,返回数组区间范围的汇总。示例 1:输入: [0,1,2,4,5,7]输出: ["0-&gt;2","4-&gt;5","7"]解释: 0,1,2 可组成一个连续的区间; 4,5 可组成一个连续的区间。示例 2:输入: [0,2,3,4,6,8,9]输出: ["0","2-&gt;4","6",&quo

2019-01-03 17:25:56 152

原创 Linux下安装JDK

1 下载之前查看你用的linux是多少位的系统,选择下载多少位的jdkgetconf LONG_BIT2 Linux下安装JDK,oracle官网下载3 使用ftp上传jdk的压缩包4 登录root用户,usr文件夹下面创建java文件夹mkdir java 或者当前用户临时切换root用户su root 获取root用户权限,当前工作目录不变(需要root密...

2018-12-11 11:01:53 141

原创 IDEA GIT其他远程分支不显示

想切换到另一个分支的时候,在IDEA的右下角没找到对应的远程分支随即我来到这个地方:项目 -&gt; git -&gt; Repository -&gt; pull  选择我想要切换的分支 ...

2018-12-07 16:04:19 20010 3

原创 解决Foxmail登陆问题:C8 NO LOGIN Login error Password expired

像往常一样,打开Foxmail收取邮件,突然出现这个错误“C8 NO LOGIN Login error Password expired”就是说:C8无登录登录错误密码过期在这个界面,无论怎样输入都是这个,所以打开网页版邮箱,输入密码,果然是密码过期解决办法:在网页版邮箱里面,修改密码,重新登陆,问题解决。...

2018-12-06 09:50:06 26927

转载 复杂网络的统计特征

原文:https://blog.csdn.net/kan2281123066/article/details/73611492 不同于规则网络和随机网络,复杂网络具有小世界效应和无标度特性。小世界效应:大的簇系数和小的平均距离。 无标度特性:节点度服从幂律分布—具有某个特定度的节点数目与这个特定度之间的关系可用一个幂函数近似表示。 统计特征:(1) 簇系数:用来衡量网络节点聚类的情...

2018-12-05 16:08:07 3119

原创 LeetCode-合并两个有序链表

合并两个有序链表,第一个想法就是归并排序。java实现代码如下:/** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode(int x) { val = x; } * } */class Solut...

2018-12-03 11:27:58 176

原创 LeetCode-20:有效的括号(JAVA实现)

给定一个只包括 '(',')','{','}','[',']' 的字符串,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。 左括号必须以正确的顺序闭合。注意空字符串可被认为是有效字符串。 解析:对于这种前后匹配的问题,脑袋里第一个想法就是使用栈来实现。代码:class Solution { public boolean isValid(...

2018-11-30 11:06:42 445

原创 《学习笔记》并发编程的挑战

在程序开发中,并发编程是不可避免的,因为在有些情况下,单线程对数据的处理远远不及多线程的处理。但是并不是所有的多线程都有速度上的优势。也就是所,并发编程也面临着挑战。1 为什么会说启动更多的线程并不能加快数据处理的速度呢?因为在单核处理器下,多线程执行的时候,CPU通过给每个线程分配CPU时间片来执行任务。时间片是CPU分配给每个线程的时间,因为时间片非常短,一般是几十毫秒。所以CPU通过...

2018-09-03 19:24:00 193

原创 数据结构栈---java实现

数据结构栈,原则是先进后出,就是把羽毛球装到球桶里面,最先放进去的羽毛球,一定是最后拿出来的(排除掉球桶底掉的情况);最后放进去的球,一定是最先拿出来的。栈的操作:push--压栈,将元素压入栈,栈的大小加1(把羽毛球放进球桶,为啥叫压栈,就是放到最底部)pop---出栈,将栈顶的元素取出,栈的大小减1(从球桶中取出一个羽毛球,只能取出第一个羽毛球吧)peek---查看栈顶元素...

2018-07-17 23:22:48 237

原创 剑指Offer面试题5:从尾到头打印链表---java实现

面试题5:从尾到头打印链表                 输入一个链表的头结点,从尾到头反过来打印出每个结点的值。题目分析:     一个链表,给定头结点,从尾到头打印,符合先进后出的原则,也就是说,用栈的操作来实现。链表的具体实现留个传送门链表实现,这里用API实现的了(当然这好像不是重点)栈的具体实现留个传送门栈的实现,当然下面也有一种实现。代码实现:packa...

2018-07-17 23:12:28 611

原创 java内存模型学习

留个坑先。

2018-07-10 22:32:17 130

原创 剑指Offer面试题4:String字符串空格替换---java实现

面试题4:请实现一个函数,把字符串中的每个空格替换成“%20”。例如输入“We are happy.”,则输出“We%20are%20happy.”。我的实现是借助了新的内存空间,即创建了一个新数组往里移动数据。代码实现:package com.practice;public class StringReplace { private static String stringRepla...

2018-06-30 17:35:00 425

原创 剑指Offer面试题3:二维数组查询------java实现

数据结构之数组面试题3:在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。二维数组中的元素行列分别递增,就像这样:{{1, 2, 3, 4}, {5, 6, 7, 8}, {6, 8, 9, 10}, {8, 16, 13, 15}}代码实现:package com.pract...

2018-06-30 14:39:45 206

原创 剑指offer面试题2:实现单例模式-----java实现

最近计划跟着剑指offer的面试题学习一下算法。都是学习。面试题2: 设计一个类,我们只能生成该类的一个实例。我们来提供五种方法来实现:1 最简单的单例模式,但是只适合在单线程下使用(不好)package com.no2;/** * 简单单例模式(只适合单线程下使用) * * @author yushen * */public class Singleton { // 单例模...

2018-06-28 22:13:01 177

原创 排序算法之快速排序

几种排序算法中,比较快速且不浪费空间的排序算法,就是快速排序。java实现快速排序的代码:package yushen0.sort;/** * * @class_name QuickSort.java * @package_name yushen0.sort */public class QuickSort { public static void main(String...

2018-05-30 11:21:45 145

原创 排序算法之归并排序

学习一下归并排序归并排序采用了“分治法”的策略,对要排序的数组进行分开排序,再合并,并且利用递归的思想实现。                                                 (  配图借鉴自图解排序算法(四)之归并排序 )2 这样对归并排序的大致思路就了解了,接下来代码实现一下:package yushen0.sort;/** * 归并排序 * * @c...

2018-05-22 19:10:31 160

原创 排序算法之选择排序

1 选择排序顾名思义就是排序中会进行一次选择操作。    选择排序的基本思路:    从第一个元素开始,每次从未排序的数组元素中,选择最小的元素出来,加入到前面已排序的行列。 举例:  对数组{8,6,5,9,1,3,2}进行选择排序  原始数组:8,6,5,9,1,3,2 第一次排序:1,6,5,9,8,3,2 第二次排序:1,2,5,9,8,3,6 第三次排序:1,2,3,9,8,5,6 第四...

2018-05-22 16:34:53 163

原创 排序算法之插入排序

1  前面对插入排序已经学习过一篇了算法基础学习-直接插入排序上次没写的一次是,插入排序是属于内排序的一种,什么叫内排序呢?就是说在内存中操作存储数据,不会去占用外存空间的排序。冒泡,插入,希尔,堆排序,归并排序,快速排序都是内排序的范畴,我会写下来的,嗯。而插入排序分为直接插入排序和二分法插入排序;二分法插入排序减少了比较的次数。但是实现排序的时间复杂度都是 O(N^2);空间复杂度是O(1);...

2018-05-21 19:01:09 127

原创 两个有序数组的合并-------Arrays.sort()方法源码解析

问:如何实现两个有序数组的合并(以int类型数组为例),合并成一个有序数组面试官如果抛出这个问题,答案会有很多种,比如插入排序,比如快速排序,还有归并排序,当然首先应该想到的就是归并排序如果面试官问我这个问题,我会这样回答: 两个有序数组合并,实现选择的排序方法有很多,如果是基本数据类型的数组,而且规模很小,元素个数在47个以内的,可以用插入排序,规模再大一些,286以内的,可以选择快速排序,否则...

2018-03-24 21:07:36 1089

原创 JVM类加载机制

在地铁上看了会书,看到了JVM实现类加载的原理,寻思记录一下。java程序运行在JVM之上,jvm的运行状况对java程序来说有很重要的影响。JVM的结构大概是这样的。JVM负责将class文件加载并执行,也就是说我们平时写的java代码,在sun的JDK的编译下,输出class文件,JVM将输出的class文件进行加载执行。JVM的类加载机制分为三个步骤,装载,连接和初始化。1 装载JVM通过类...

2018-03-13 22:26:18 145

原创 (学习笔记)分布式架构之负载均衡(Load Balance)

分布式领域很广,听起来很厉害,其实也很厉害,在你想学的时候,很容易就会迷茫,这咋下手啊,从哪儿开始学啊。。。吧啦吧啦。。反正没人教,摸索吧,就从一个中小型的分布式系统原理开始学吧所以我今天学习了负载均衡。对于一个web网站来说,用户的请求访问如果很多的话,单一的服务器系统就承载不了压力,如果很多的请求来的话,小则来说,网站响应慢,一个请求等好久才会响应完成,大则容易造成服务器宕机,这样这个网站也就...

2018-03-13 20:08:47 822

原创 java底层学习

底层要学习什么啊,总结一下大牛们的经验,给自己定个路线,记录关于一些技术方面需要学习的东西:还有一些面试题:1、开发中Java用了比较多的数据结构有哪些?2谈谈你对HashMap的理解,底层原理的基本实现,HashMap怎么解决碰撞问题的?这些数据结构中是线程安全的吗?假如你回答HashMap是线程安全的,接着问你有没有线程安全的map,接下来问了conurren包。3、对JVM熟不熟...

2018-03-12 20:43:26 5091 3

原创 数据结构-双向链表(一)(java)

之前学习了单向链表,没写到单向循环链表,这里简单学习记录一下,单向非循环链表的尾节点元素的next指向的是null,也就是没有后继节点,并且头节点没有前驱元素,就是一条链子,首尾不相连。而单向循环链表就是头节点的前驱元素就是尾节点,尾节点的后继元素是头节点,next就不是null了。循环链表就是首尾相连的链子。现在学习一下双向链表的实现(非循环)双向链表的每个元素都有一个关键字和两个指针prev+...

2018-03-08 21:37:07 189

原创 JAVA判断一个地理坐标是否在一个多边形区域内和是否在一个圆形区域内(经纬度)

怎么样判断一个坐标点在一个多边形区域内?包括规则多边形,不规则多边形,还有圆。。。1 判断一个坐标是否在圆形区域内?多边形和圆分开写,首先简单的就是判断是否在圆里面,如何判断一个坐标是否在圆形区域内,相信不用我说都知道,计算这个坐标点和圆心之间的距离,然后跟圆的半径进行比较,如果比半径大,就不在圆形区域内,如果小于等于圆的半径,则该坐标点在圆形区域内。数学上的计算公式是这样的:...

2018-03-05 20:17:27 34836 25

原创 java开发学习

实践是最好的成长。在前进的路上,抬脚前需要确定好方向,现在互联网技术领域又多,但是又有千丝万缕的关系,成熟的技术也很多,可以说是眼花缭乱了。没有高人指点的情况下,要想自己摸索出一条方向来着实不易。现在工作方面正在负责分布式任务开发,所以想从分布式这条方向上学习一下,但是分布式领域技术也很多很杂,网上介绍相关的也是太少,太浅,很多东西一看就是点到为止,所以学习有点无从下手。算法导论和数据结构与算法这...

2018-02-27 21:10:20 198

原创 解决Mysql数据库访问出现“Too many connections”问题

工作中代码中访问数据库连接的时候,代码运行中出现了"Too many connections" 的错误:如:MySQL "Too many connections"    com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Data source rejected establishment of conne...

2018-02-23 21:12:48 25669 2

原创 数据结构-单向链表(二)(Java)

上一节写了单向链表的实现,现在来写一下单向链表的排序上一节写的单向链表按照先进后出的原则实现的单向链表,这一节依然按照先进后出的原则实现链表。实现链表的代码在上一节,这里就只按照冒泡排序的方法排序一个链表,顺便可以学习一下冒泡排序。1.冒泡排序冒泡排序是一种比较简单的排序算法。它重复的走访需要排序的数列,每一次比较相邻的元素,如果元素排列部不符合我们的要求(从小到大或从大到小的顺序

2018-01-31 23:11:37 138

原创 数据结构-单向链表(一)(JAVA)

1.数据结构之链表链表是一种按照线性顺序排列各对象的数据结构。数组的线性顺序是由数组下标决定的,然而与数组不同的是,链表的顺序        是由各个对象里面的指针决定的。链表为动态集合提供了一种简单而灵活的表示方式。单向链表中每个对象有一个元素和一个next指针,指向下一个链表对象:x为单向链表中的一个元素,x.next指向它在链表中的后继元素。链表中最后一个元素是没有后继元素的,它

2018-01-30 22:37:13 360

原创 Maven手动导入jar包

今天开发中遇到从远程导到本地的项目,由于本地缺少对应的JAR包报错的问题,记录一下手动导入jar包的方法:mvn install:install-file -Dfile= -DgroupId= -DartifactId= -Dversion= -Dpackaging=   :jar包路径  :maven依赖中的group-id : maven依赖中的artifact-id

2018-01-30 21:12:26 11691

原创 commons-dbutils包的使用

commons-dbutils包的使用1.commons-dbutils包是啥:commons-dbutils包是Apache开源组织提供的用于操作数据库的工具包。简单来讲,这个工具包就是用来更加方便我们操作数据库的,最近工作中使用了一下,感觉确实方便很多,基本告别自己封装JDBC代码对数据库进行增删改查了。代码看着也很简洁。使用这个包,看懂方法的使用,就行吧,我先记录一下使用的方

2018-01-25 22:56:47 3032

原创 算法基础学习---直接插入排序

1.什么是插入排序?算法导论上面举了一个比较形象的例子:扑克牌。桌子上面放一副扑克牌,我们抓牌的时候,刚开始手里是没有牌的,我们开始一张一张拿到牌往左手塞,第一张K,放到手里,这时候左手已经有一张牌了,而且是有序的,这时候就开始有了循环不变的一组(接下来会解释),拿到第二张牌,是Q,就放到K的右边(当然你也可以习惯放到左边),这时候左手已经有两张牌了,而且是有序的,第三张是A,就寻找合适的位置

2018-01-24 22:46:56 363 1

SCJP考试指南

SCJP考试指南(考试号310-065)___Pg490(1).pdf

2015-12-28

空空如也

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

TA关注的人

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