自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(22)
  • 资源 (1)
  • 收藏
  • 关注

原创 Spring AOP理解与应用

文章目录一 什么是Spring AOP二 为什么需要Spring AOP三 如何使用Spring AOP一 什么是Spring AOP二 为什么需要Spring AOP三 如何使用Spring AOP

2020-05-08 00:23:14 200

原创 代理模式简单入门

一 什么是代理模式(What)在不改变原始类的情况下,通过继承等方式获取代理类,从而扩展类的功能。二 什么时候使用代理模式(When)示例:性能计数器,用以统计某个接口的响应时长、访问时间等等信息。代码版本 V1public class UserController{ @Autowired private MetricsCollector metricsCollector; pu...

2020-05-07 00:18:27 225

原创 JvisualVM使用教程

最近正在学习JvisualVm的使用,写一篇博客记录一下。一 工具准备1 软件已经安装JDK及IDEA。2 插件2.1 Idea插件在idea中按住快捷键 shift + command + A,输入plugins,搜索visualvm,如下图所示,安装插件。安装完该插件,在idea的工具栏中会多出两项,分别对应“Run with VisualVm”和“Debug With Vis...

2020-03-22 19:30:33 3191

原创 【高效能人士的七个习惯】内心平静,与人为善

大约两个月之前,看了一本时间管理类的书籍,书名叫做《番茄工作法》,一下子如醍醐灌顶,顿觉以前的学习方法实在是太原始了——死板僵硬的流程、毫无目的的做事,导致自己的执行力下滑,工作的效率很低。从那之后,就对时间管理的相关内容多留心了一些,前阵子买了两本书,一本叫做《小强升职记》,还有一本就是《高性能人士的七个习惯》。前者像是武功招式,而后者则是内功心法。 “人类成长分为三...

2019-06-09 16:12:17 188

原创 【linux】vim格式设置

set nomodelineset nusyntax onset shiftwidth=4set softtabstop=4set tabstop=4set expandtabset autoindentset tabstop=4set ai!

2019-06-06 09:26:46 434

原创 【Java IO相关】拷贝文件 && 拷贝文件夹(包括子文件夹)

拷贝文件public static void copyFile(String srcFile, String destFile) { File sFile = new File(srcFile); File dFile = new File(destFile); dFile.getParentFile().mkdirs(); try( ...

2019-05-30 11:12:33 178

原创 【Java IO相关】将某目录下的文件切分成多个子文件 && 将多个子文件合并成完整的文件

切分文件package myio.test;import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;public class SplitFile{ public static void main(String[] args) { File file1 = new F...

2019-05-28 16:03:42 629

原创 《算法第四版》学习:动态连通性

问题描述:给定了一组原始数据对,每个数据对<p, q>表示点p和点q相连。输入新的数据对<x,y>, 判断x,y是否已经在原始数据对中相连,如果不是,则输出x,y。  这个问题有很多的变形,比如A认识B,A认识C,那么A是C的间接好友,如果有很多的这种人物关系当做原始数据集,再让判断新输入的两个人是否是间接好友,则就可以用这里的动态连接性。最慢的实现方法: quick_...

2019-05-16 21:18:35 167

原创 【java IO 相关】找出某路径下所有文件夹中最大和最小的文件,并打印出文件名

主要是练习java IO的相关操作public class ResultClass //用来保存最大和最小文件信息的类{ long maxLen; long minLen; String maxString; String minString;}public static ResultClass getAllFile(File file){ ResultClass re...

2019-05-15 19:06:08 813

原创 《算法第四版》学习:统计一个随机字符串数组中,重复的字符串的个数,以及重复的字符串

获取长为k的随机字符串组成的数组,数组长度为Npublic static String[] getKLengthStrings(int N, int k) { if(N<=0) return null; String[] strings = new String[N]; char[] cs = new char[k]; for(int ii=0; ii<...

2019-05-13 15:15:46 1114

原创 《算法第四版》学习:求输入字符串所代表的算术表达式的值

Dijkstra方法创建了两个栈,一个用来存放运算符 ops,一个存放操作数 vals,遇到左括号跳过,遇到右括号将vals栈顶的两个元素执行ops栈顶的操作。package com.chap1.algorithm;import java.util.Stack;import edu.princeton.cs.algs4.StdIn;public class DijkstraEvalua...

2019-05-08 21:59:31 460

原创 7种排序算法汇总

排序算法1. 冒泡排序 平均时间复杂度O(n2)O(n2)O(n^2) ( 最好O(n)O(n)O(n),最差O(n2)O(n2)O(n^2) ) 空间复杂度O(1)O(1)O(1) 稳定排序 代码如下void BubbleSort(vector&amp;amp;amp;lt;int&amp;amp;amp;gt;&amp;amp;amp;amp; vec){ if (vec.size

2018-09-13 20:17:04 944

原创 Top K 问题的几种解法

1. 先排序后取K个数。 时间复杂度O(nlgn).vector&lt;int&gt; FindSmallestKNum(vector&lt;int&gt; &amp;vec, int k){ if (vec.size() &lt; k) return vector&lt;int&gt;(); sort(vec.begin(), vec.end()); return vect...

2018-08-22 17:16:50 992

原创 C++带特殊符号的标准输入读取方法

近期秋招,做了不少的笔试,发现在使用C++语言按照题目要求读取数据时,由于操作不熟练,导致浪费了很多的时间。痛定思痛,决定总结一下该如何读取数据,以便下次参照使用。要求:读入M行整数,行内相邻数据间用英文逗号“,” 隔开。例如 代码如下:#include &lt;iostream&gt;#include &lt;sstream&gt;#include &lt;vector...

2018-08-14 22:46:48 6099

原创 STL中几种典型容器的操作

1.  遍历函数 (顺序容器共用)。template&lt;typename T&gt;void Display(T x){ for (auto it=x.begin(); it != x.end(); ++it) cout &lt;&lt; *it &lt;&lt; " "; cout &lt;&lt; endl;}2. vector的用法。void UseOfVector(voi...

2018-04-02 22:21:31 224

原创 链表的各种基本操作

1. 链表定义。#ifndef _LISTNODE_#define _LISTNODE_struct ListNode{ int m_value; ListNode * m_pNext;};#endif2. 初始化链表。void InitList(ListNode * L){ L = nullptr; cout &lt;&lt; "InitList Success! " &...

2018-03-27 10:21:36 19116

原创 二分查找,快速排序,归并排序,堆排序

1. 二分查找的递归版本。int BinarySearchRecur(vector&lt;int&gt; &amp;v1, int searchNum, int sIdx, int eIdx){ int ret = -1; int midIdx = sIdx + ( (eIdx - sIdx) &gt;&gt; 1 ); if (sIdx &lt;= eIdx) // 一定要加上,不...

2018-03-25 22:00:43 657

原创 二叉树的七种遍历及部分操作

1. 二叉树结构体。struct BinaryTreeNode{ char m_cValue; BinaryTreeNode * m_pLeft; BinaryTreeNode * m_pRight;};typedef BinaryTreeNode* BiTree;2. 先序创建二叉树。void CreateBTree(BiTree &amp;T) //前序...

2018-03-24 10:44:57 280

原创 求输入字符串所不能表示的最小正整数

问题:输入一个由若干0~9组成的字符串,求其不能表示的最小正整数。例如:若输入001123456789,输出应当是22。输入102,输出3。思路:首先判断输入的字符串中是否含有全部0~9的数字,统计各个数字出现的次数。1)若存在某些数字(不含零)未出现,则输出未出现数字中的最小值。2)若0未出现,其余均出现,则输出10。3)若所有数字均出现,且出现次数最少的数字为X(不含零), 出现的次数为T, ...

2018-03-23 09:50:44 564

原创 原始数字魔方(3*3的二维矩阵) 旋转后 得到目标数字魔方(3*3的二维矩阵)

问题描述:原始数字魔方是个3*3的数字矩阵,内部元素从1到9,如下:123456789它有如下的子魔方每个子魔方可以进行的旋转操作现在给定一个目标魔方,问原始魔方最少经过多少次旋转可以得到目标魔方?例如,若目标魔方为541623789则程序输出应当为3.程序如下:1. 输入二维矩阵initArr,其第block[ii]子魔方旋转α度后得到的矩阵rotatedArr。void MagicCubeRo...

2018-03-20 13:06:32 1537 7

原创 Hash表各种基本操作

1. 头文件common.h的内容。#include &lt;iostream&gt; #include &lt;string&gt; #include &lt;stack&gt; #include &lt;fstream&gt;#include &lt;sstream&gt;#include &lt;vector&gt;#include &lt;ctime&gt;//time.

2018-03-18 13:37:01 417

原创 求无序数组中最大的K个数 或 第K大的数

1、方法一:要求无序数组中没有重复元素,同时允许更改数组内的内容。主要思想是利用快速排序Partition函数依次进行前K个元素的排序,平均时间复杂度O(n)。#include &lt;iostream&gt; #include &lt;string&gt; #include &lt;stack&gt; #include &lt;fstream&gt;#include &lt;ss...

2018-03-16 20:09:13 2625

zuo神算法基础班及进阶班视频资源

左神算法班,对于准备找工作的同学可能有用,尤其是刷题时间不够可以看看。主要内容包括: 基础班:排序、二叉树、贪心、dp等等(有关图的内容丢失);进阶班:KMP、Morris等等。

2018-09-21

空空如也

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

TA关注的人

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