自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 shell命令之---操作文件

目录1、cat:显示或拼接文件内容2、find:查找并列出文件3、xargs:给命令传递参数的过滤器4、tr:转换5、sort:排序6、split:文件分割7、chmod:给文件赋权限8、touch :生成空白文件或者改变文件的时间信息9、diff:文件对比工具10、head、tail:打印文件部分内容11、ls:列出目录12、grep:搜索13、cut:文件切分14、sed:替换文本15、awk:处理数据流1、cat:显示或拼接文件内容.

2020-08-03 23:57:05 34

原创 shell常用命令基础知识

Shell脚本通常是一个以shebang起始的文本文件【#!/bin/bash,sharp-bang简写,sharp表示#,bang表示!】,其中/bin/bash是Bash的解释器命令路径,bash将以#为开头的行视为注释,脚本中只有第一行可以使用shebang来定义解释该脚本所使用的的解释器。 Shell脚本有两种运行方式:一种是将脚本作为bash的命令行参数,如:$ bash /home/path/script.sh #使用脚本的完整路径;另一种则是授予脚本执行权限,将其...

2020-07-21 23:37:15 46

原创 《重构改善既有代码的设计》感想

《重构改善既有代码的设计》 ,作者是Martin Fowler,被软件开发者称为“教父”,其建立的敏捷开发彻底改变了人类开发软件的模式,从传统的以文档为驱动的、笨重的软件开发模式转化为以核心需求为中心,”可以让汽车一边跑,一边换轮子“的敏捷开发模式,《重构》也被称为是软件开发的不朽经典,被誉为金字塔顶端的书,在分析重构原理和具体实践方式的同时,向程序员提供了一种优秀的编程习惯和编程态度。1、什么是重构---what? 重构(名词):对软件内部结构的一种调整,目的是在不改变软件可观...

2020-07-19 19:09:17 25

原创 BigDecimal 使用总结

踩坑史: 1) BigDecimal除法运算出现:java.lang.ArithmeticException: Non-terminating decimal expansion; no exact representable decimal result 原因所在:通过BigDecimal的divide方法进行除法时当不整除,出现无限循环小数...

2020-07-19 19:05:51 14

原创 Excel 使用坑总结

Apache POI是Apache软件基金会的开源项目,POI提供API给Java程序对Microsoft Office格式档案读和写的功能。 详细介绍见:https://www.cnblogs.com/huajiezh/p/5467821.html 使用过程中遇到的坑:1)导出Excel时,常规格式下数字012会变成12,所以对于有数字的列需要设置为文本格式:...

2020-07-19 18:56:37 24

原创 IntelliJ IDEA 快捷键整理

视频学习网址:https://www.imooc.com/learn/924 看到大神敲代码常常都是按两个键就可以出来一行,轻轻松松就可以敲出一段代码,本着"工欲善其事必先利其器"的精神,特意学习一下idea的快捷键操作,努力向一个标准的程序员靠近。Mac基本快捷键: ⌘ -> command ⇧ -> shif...

2019-11-10 23:36:58 49

原创 第六章、重新组织函数

重构代码的一个重要方法就是Extract Method,把一段代码从原先函数中提取出来,放进一个单独的函数中。 其中,最大的困难是处理局部变量:可以使用 Split Temporary Variable (分解临时变量)处理多个临时变量的情况,然后使用 Peplace Temp with Query (以查询取代临时变量)去掉所有可以去掉的临时变量,如果临时变量难以替换,...

2019-07-28 19:13:08 46

原创 剑指offer :树类题目汇总

7.重建二叉树:         输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。       解题思路:把重建二叉树分解为构建左右子树。根据题目给出的前序遍历、中序遍历数组,首先找出根节点 , 然后再根...

2018-11-15 22:31:18 163

原创 剑指offer :算法和数据操作类题目汇总

 一.递归和循环:      基于递归实现的代码比基于循环实现的代码简洁,但由于每一次调用都需要在内存栈中分配空间以保存参数、返回地址及临时变量,实现效率不如循环,此外,递归可能会引起栈溢出。 10.斐波那契数列:         大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项。n<=39         解题思路:直接采用递归的方式,由...

2018-11-15 20:32:22 59

原创 剑指offer :栈和队列类题目汇总

            基本操作:https://www.cnblogs.com/whsa/p/4272717.html栈----先进后出 push(E item)       把项压入堆栈顶部。    pop()          移除堆栈顶部的对象,并作为此函数的值返回该对象。   peek()        查看堆栈顶部的对象,但不从堆栈中移除它。   boolean e...

2018-11-15 20:01:51 74

原创 剑指offer :数组类题目汇总

3.数组中的重复数字:           在一个长度为n的数组里的所有数字都在0到n-1的范围内。 数组中某些数字是重复的,但不知道有几个数字是重复的。也不知道每个数字重复几次。请找出数组中任意一个重复的数字。 例如,如果输入长度为7的数组{2,3,1,0,2,5,3},那么对应的输出是第一个重复的数字2。         解题思路:一维数组在内存中占据连续的空间,可以根据下标定位对应的...

2018-11-15 19:36:15 53

原创 剑指offer :数值类题目汇总

 15.数值的整数次方:            给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。不得使用库函数,不需要考虑大数问题。           解题思路:不使用库函数实现乘方问题,需要考虑几种特殊情况,当输入为0时,输出为1,当输入为负数时,需要先转换成绝对值,最终的结果用1整除即可。public class...

2018-11-15 18:58:13 62

原创 剑指offer :链表类题目汇总

         涉及到链表的增删问题,需要考虑增删的位置(前中尾)、增删后保证链表不断裂。下面对剑指offer中出现的链表类题目进行总结: 6.从尾到头打印链表:       输入一个链表,从尾到头打印链表每个节点的值。       解题思路:最直接的方法是改变链表的方向,从尾到头输出,这种方法需要“后进先出”的栈结构;/*** public class ListN...

2018-11-14 22:14:49 82

原创 剑指offer :字符串类题目汇总

 5.替换空格:        请实现一个函数,将一个字符串中的空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。        解题思路:直接使用Java自带的字符串替换方法,或者从前向后记录空格的数量,改变bufferstring的长度,从后向前替换空格(Java通过length()方法和charAt()方法结...

2018-11-14 21:55:34 80

原创 Java排序算法总结:

各种排序算法总结中不错的博客:      http://blog.chinaunix.net/uid-25906157-id-3318529.html      https://www.cnblogs.com/imqsl/p/6480749.html      https://www.cnblogs.com/guoyaohua/p/8600214.html 排序方法的分类:...

2018-10-26 22:33:10 151

原创 Java中不同情况下的执行顺序整理:

      初始化顺序:父静态变量、父静态代码块、子类静态变量、子类静态代码块、父类非静态变量、父类非静态代码块、父类构造器、子类非静态变量、子类非静态代码块、子类构造函数。      执行顺序:父类B静态代码块->子类A静态代码块->父类B非静态代码块->父类B构造函数->子类A非静态代码块->子类A构造函数   例如:class A { pu...

2018-10-26 11:48:35 124

转载 java 编程 finally中的return语句执行:

转载:https://www.cnblogs.com/sunshineweb/p/7656463.html      第一种情况:在try和catch中有return,finally中没有return,且finally中没有对try或catch中要 return数据进行操作的代码,无论怎样,finally中的代码都会执行。public class Test { public s...

2018-10-26 11:31:58 41

原创 Java中int与integer

 int是基本数据类型,仅仅代表数的范围;而integer是int的封装类,还包含了很多与数据有关的方法;int的默认值是0;而integer的默认值是null;int的变量名和数值都存储在栈内存中;而integer是引用堆内存的一个对象,变量名在栈内存,int不需要实例化;integer需要实例化,实例化方法有三种:①.Integer i = 12 使用了自动装箱,此特性从j...

2018-10-26 11:23:20 53

原创 Java并发编程:

 1 Java多线程优势,实现方式:        多线程优势:1.进程之间不能共享内存,线程之间共享内存更容易,多线程可协作完成进程工作;2.创建进程进行资源分配的代价较创建线程要大得多,多线程在高并发环境中效率更高。        并发编程的挑战:上下文切换(任务从保存到再加载的过程--->如何减少:无锁并发编程、CAS算法、使用最少的线程、使用协程(在单线程里实现多任务的调...

2018-10-26 11:10:16 124 1

原创 Java集合类面试总结:

 1、String、StringBuffer、StringBuilder 的区别是什么?String为什么是不可变的?         ①String是字符串常量,StringBuffer和StringBuilder都是字符串变量。后两者的字符内容可变,而因为在JDK中String类被声明为一个final类,创建后内容不可变。②StringBuffer是线程安全的,而StringBuild...

2018-10-26 10:19:55 178

原创 网络通信面试知识点总结:

 1.一个Http请求的流程:        DNS域名解析 –> 发起TCP的三次握手 –> 建立TCP连接后发起http请求 –> 服务器响应http请求,浏览器得到html代码 –> 浏览器解析html代码,并请求html代码中的资源(如javascript、css、图片等) –> 浏览器对页面进行渲染呈现给用户--->在浏览器中输入www.b...

2018-10-26 09:50:57 3674

原创 JVM常见知识点汇总:

 围绕JVM内存空间有三个重要的组成部分:       类加载器子系统(Class类文件内部结构怎样?JVM何时加载类?如何加载类?)      字节码执行子引擎 (程序运行时帧栈结构?方法调用时如何支持多态?执行引擎如何工作?)       垃圾回收器GC(如何确定对象可回收?哪些垃圾回收方法?何时进行垃圾回收?) 1.JVM的内存结构:        JVM内存结构...

2018-10-25 22:06:00 223

原创 3.solr 6.6.0 部署到Tomcat下并设置访问密码

 1.solr 6.6.0 部署到Tomcat下:       ①把solr-6.6.0.zip解压之后,找到solr-6.6.0/server/server-webapp/目录下的webapp文件夹,复制粘贴到tomcat下的webapps下并修改文件夹名为solr;       ②把solr-6.6.0/server/lib/ext目录下的所有jar包、和solr-6.6.0/di...

2018-10-25 21:46:12 135

原创 2. solr 6.6.0 内容上传及查询

接上文:https://blog.csdn.net/danjuanzi2684/article/details/833858311. solr文字内容上传: 以core名为try为例,上传过程需要将上传的字段添加在配置文件try\\conf\\ managed-schema中,以上传old、WebpageURL、imgWebURL三个字段为例,基本配置如下:&...

2018-10-25 21:14:10 234

原创 1.Windows下 solr 6.6.0 的环境搭建

solr环境搭建:      下载地址:http://archive.apache.org/dist/lucene/solr/6.6.0/      下载后在solr-6.6.0\\bin目录下打开命令行,输入运行命令:solr start,然后浏览器中输入http://localhost:8983/solr即可访问,结束时的命令:solr stop -all。     solr是...

2018-10-25 20:32:21 80

原创 MYSQL问题处理

 1.MYSQL问题解决方案:Access denied for user 'root'@'localhost' (using password:YES)经查找资料发现是root帐户默认不开放远程访问权限,所以需要修改一下相关权限。解决方案:1.打开MySQL目录下的my.ini文件,在文件的最后添加一行“skip-grant-tables”,保存并关闭文件。(WIN7默认安装,m...

2018-10-25 11:43:39 46

原创 MySQL日常处理

MySQL中遇到问题汇总: 1.mysql与CSV:           从csv格式导入到workbench中,新建一张表,点击右键,选择 table data import wizard,选择CSV文件,依次next即可;从workbench中导出成csv格式的文件,选择如下按钮,文件类型选择csv即可。2.json格式中的中文显示问题(python3下):d...

2018-10-25 11:38:58 64

原创 MySQL知识点总结:

     总结MySQL面试中常见的知识点以及常考的sql语句: 一、MySQL索引: 1.索引分类及创建:        索引是帮助MySQL高效获取数据的数据结构,可分为:        1.普通索引(经常出现在WHERE或ORDER BY后的单一列上使用,可以重复,由关键字KEY或INDEX定义的索引)、CREATE INDEX index_name ON ta...

2018-10-25 11:29:51 387

原创 LeetCode:动态规划+贪心题目整理

     以下均为AC代码,后续将不断更新…… 1.字符串分割:(LeetCode:word-break)         Given a string s and a dictionary of words dict, determine if s can be segmented into a space-separated sequence of one or more di...

2018-10-24 16:26:06 1161

原创 LeetCode 字符串滑动窗口问题汇总:

   对于字符串窗口的问题,使用hashmap来统计出现的字符及次数,然后通过构建窗口来统计, 1.最小子字符串(LeetCode: minimum-window-substring)        Given a string S and a string T, find the minimum window in S which will contain all the chara...

2018-10-24 15:28:14 1026

原创 LeetCode 回文问题汇总:

     如果要求输出所有可能的解,使用深度优先搜索。如果要找出最优的解,或者解的数量,往往可以使用动态规划。     关于回文问题的解决方案汇总如下,所有代码均已AC。 1.判断回文链表:(leetcode : Palindrome Linked List)Given a singly linked list, determine if it is a palindrome....

2018-10-24 11:48:01 167

原创 写在开头

         临近毕业,18年的求学生涯要告一段落了,本科期间由于保研没有体会找工作的艰辛,研究生真是彻彻底底的体会到了,从7中旬开始海投提前批,到10月底结束秋招,视频面、电话面、霸面、现场面都一一经历过,遭遇过简历被刷,笔试全AC却直接收到感谢信,也因为学历及性别遭到国企的嫌弃,4个月的时间真是悲喜交加,体会了一天四五场笔试外加面试的崩溃,也有等开奖的煎熬,有收到offer的高兴,也有...

2018-10-24 11:27:55 42

原创 LeetCode 数组排列组合问题汇总:

       字符的排列组合问题,使用递归+回溯方法。对于有重复元素或者需要组合的元素具有一定顺序,需要先进行排序。        排列问题因为对所有元素进行排列,判断是否为结果的条件是list的大小和数组的长度相同,否则,依次将没有排列的元素添加到list中,结束一次排列后需要回溯;对于数组元素唯一,只需要在循环中判断list中是否包含该元素,不包含,进行添加,否则,跳过。对于数组元素不唯一...

2018-10-24 11:26:29 628

原创 LeetCode合并问题汇总

       刷题包括笔试中经常会遇到合并问题,将LeetCode中常见的合并问题的代码总结如下,包括数组合并、链表合并、区间合并,涉及到排序,递归等常用操作: 1.关于数组合并:(LeetCode 88:merge-sorted-array)       Given two sorted integer arrays A and B, merge B into A as one so...

2018-10-24 10:40:05 72

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