自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(138)
  • 收藏
  • 关注

转载 IntelliJ IDEA 报错:找不到包或者找不到符号

文章目录IntelliJ IDEA 报错:找不到包或者找不到符号1.利用Maven-Reimport2.Invalidate and Restart3.编码统一4.重新编译IntelliJ IDEA 报错:找不到包或者找不到符号 最近在使用IDEA的时候,突然出现过找不到包或者找不到符号的情况,在确定了自己引用存在的情况下,可以尝试以下几种方式来解决,以下是在开发过程中碰过问题同样解...

2019-01-29 15:22:23 796

转载 B树与B+树的区别

 如图所示,区别有以下两点:1. B+树中只有叶子节点会带有指向记录的指针(ROWID),而B树则所有节点都带有,在内部节点出现的索引项不会再出现在叶子节点中。2. B+树中所有叶子节点都是通过指针连接在一起,而B树不会。 B+树的优点:1. 非叶子节点不会带上ROWID,这样,一个块中可以容纳更多的索引项,一是可以降低树的高度。二是一个内部节点可以定位更多的叶子节点。...

2019-01-27 08:48:51 870

转载 为什么mysql innodb索引是B+树数据结构

一、为什么mysql innodb索引是B+树数据结构?言简意赅,就是因为:1.文件很大,不可能全部存储在内存中,故要存储到磁盘上2.索引的结构组织要尽量减少查找过程中磁盘I/O的存取次数(为什么使用B-/+Tree,还跟磁盘存取原理有关。)3、B+树所有的Data域在叶子节点,一般来说都会进行一个优化,就是将所有的叶子节点用指针串起来,这样遍历叶子节点就能获得全部数据。二、什么是聚簇索...

2019-01-26 15:20:25 390

转载 zookeeper 中的数据结构

ZooKeeper 会维护一个具有层次关系的数据结构,它非常类似于一个标准的文件系统:树形结构的每个节点都被称作为Znode。Zonde通过路径引用,如同Unix中的文件路径。路径必须是绝对的,因此他们必须由斜杠字符来开头。除此以外,它们必须是唯一的,也就是说每一个路径只有一个表示,因此这些路径不能改变。在ZooKeeper中,路径由Unicode字符串组成,并且有一些限制。字符串"/...

2019-01-26 13:42:11 1283

原创 zookeeper 中的zxid

致使ZooKeeper节点状态改变的每一个操作都将使节点接收到一个Zxid格式的时间戳,并且这个时间戳全局有序。也就是说,每个对节点的改变都将产生一个唯一的Zxid。如果Zxid1的值小于Zxid2的值,那么Zxid1所对应的事件发生在Zxid2所对应的事件之前。实际上,ZooKeeper的每个节点维护者两个Zxid值,为别为:cZxid、mZxid。(1)cZxid: 是节点的创建时间所对应...

2019-01-26 13:20:16 14563 9

转载 Redisson实现Redis分布式锁的N种姿势RedLock

前几天发的一篇文章《Redlock:Redis分布式锁最牛逼的实现》,引起了一些同学的讨论,也有一些同学提出了一些疑问,这是好事儿。本文在讲解如何使用Redisson实现Redis普通分布式锁,以及Redlock算法分布式锁的几种方式的同时,也附带解答这些同学的一些疑问。Redis几种架构Redis发展到现在,几种常见的部署架构有:单机模式; 主从模式; 哨兵模式; 集群模式;...

2019-01-26 13:07:25 6450 3

转载 git 更名

本地分支重命名git branch -m old new远程分支重命名删除远程分支git push origin :远程分支名(你要删除的远程分支名)将本地分支推送到远程分支上,如果远程分支不存在,则创建此远程分支git push origin 本地分支名:远程分支名--------------------- 作者:Always0nTheWay 来源:CSDN 原文...

2019-01-25 11:47:51 505

转载 zookeeper的启动和状态查看

 Using config: /Users/dongfucai/local/zoo1/zookeeper-3.4.12/bin/../conf/zoo.cfgUsage: ./zoo1/zookeeper-3.4.12/bin/zkServer.sh {start|start-foreground|stop|restart|status|upgrade|print-cmd}➜ loca...

2019-01-24 11:11:36 16233

转载 ReentrantLock 图详解

ReentrantLock详解ReentrantLock详解 Lock lock()过程 公平锁 非公平锁 unlock()过程 lockInterruptibly()过程 tryLock() tryLock(long timeout, TimeUnit unit) newCondition()       斜体为...

2019-01-23 23:47:19 134

转载 java中时间的截取 Date Calendar

 推迟一周代码:Calendar curr = Calendar.getInstance();curr.set(Calendar.DAY_OF_MONTH,curr.get(Calendar.DAY_OF_MONTH)+7);Date date=curr.getTime();推迟一月代码:Calendar curr = Calendar.getInstance();cu...

2019-01-23 16:32:58 3707

转载 从 synchronized 到 CAS 和 AQS - 彻底弄懂 Java 各种并发锁

概述Java 中的并发锁大致分为隐式锁和显式锁两种。隐式锁就是我们最常使用的 synchronized 关键字,显式锁主要包含两个接口:Lock 和 ReadWriteLock,主要实现类分别为 ReentrantLock 和 ReentrantReadWriteLock,这两个类都是基于 AQS(AbstractQueuedSynchronizer) 实现的。还有的地方将 CAS 也称为一种...

2019-01-22 10:23:03 3786

转载 volatile 的内部如何实现的

反汇编Java字节码,查看汇编层面对volatile关键字做了什么有了上面的理论基础,我们可以研究volatile关键字到底是如何实现的。首先写一段简单的代码: 1 /** 2 * @author 五月的仓颉http://www.cnblogs.com/xrq730/p/7048693.html 3 */ 4 public class LazySingleton { 5 ...

2019-01-22 08:45:51 395 1

转载 happens-before

3.有序性  在Java内存模型中,允许编译器和处理器对指令进行重排序,但是重排序过程不会影响到单线程程序的执行,却会影响到多线程并发执行的正确性。  在Java里面,可以通过volatile关键字来保证一定的“有序性”(具体原理在下一节讲述)。另外可以通过synchronized和Lock来保证有序性,很显然,synchronized和Lock保证每个时刻是有一个线程执行同步代码,相当于...

2019-01-22 08:35:18 141

转载 JDK 5.0 中更灵活、更具可伸缩性的锁定机制

先看看 synchronized 的一些限制:      1.1 :无法中断正在等候获取一个锁的线程      1.2 :无法通过投票得到一个锁      1.3 :释放锁的操作只能与获得锁所在的代码块中进行,无法在别的代码块中释放锁 。  ReentrantLock 类实现了 Lock ,它拥有与 synchronized 相同的并发性和内存语义,但是添加了类似锁投票、定时锁等候和...

2019-01-22 08:04:58 132

转载 mysql_bin log

binlog基本认识MySQL中的binlog是一个二进制文件,它记录了所有的增删改操作。节点之间的复制就是依靠binlog来完成的。binlog具有三种模式:Row模式 日志中会记录成每一行数据被修改的日志,然后在slave端再对相同的数据进行修改。例如:update xxx where id in(1,2,3,4,5);采用该模式则会记录5条记录。 statement模式 每一条...

2019-01-21 23:50:19 241

转载 binlog,redo log,undo log区别

1. binlog是MySQL Server层记录的日志, redo log是InnoDB存储引擎层的日志。 两者都是记录了某些操作的日志(不是所有)自然有些重复(但两者记录的格式不同)。 2. 选择binlog日志作为replication我想主要原因是MySQL的特点就是支持多存储引擎,为了兼容绝大部分引擎来支持复制这个特性,那么自然要采用MySQL Server自己记录的日志而不是仅仅...

2019-01-21 23:16:49 412

转载 计算机为什么要设置线性地址,从逻辑地址到线性地址再到物理地址?

作者:龚黎明链接:https://www.zhihu.com/question/41431386/answer/91115537来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。 逻辑地址是给操作系统之上的软件看的。他们不需要知道硬件是怎么设计的,只需要一台理想的虚拟机就可以了。这样是为了同样的软件应用于不同的硬件上。线性地址是给CPU看的。CPU不需要知...

2019-01-20 11:03:43 452

转载 linux 文件系统详情

从操作系统的角度详解Linux文件系统层次、文件系统分类、文件系统的存储结构、不同存储介质的区别(RAM、ROM、Flash)、存储节点inode。转载本文请注明出处,本文参考:          http://blog.chinaunix.net/uid-8698570-id-1763151.html          http://www.iteye.com/topic/816268 ...

2019-01-20 00:02:54 483

转载 全排列

1 递归回溯的那几点要素 void permutation(string &str,int k){ if(k==(str.size())){ cout<<str<<endl; return ; } for(int i=k;i<str.size();++i){ swap(str[k],str[i]); permutation(s...

2019-01-19 17:56:04 92

转载 Group Anagrams 群组错位词

Given an array of strings, group anagrams together.Example:Input: ["eat", "tea", "tan", "ate", "nat", "bat"],Output:[ ["ate","eat","tea"], ["nat"

2019-01-19 17:00:03 177

转载 Top K Frequent Elements 数组前K个高频元素

Given a non-empty array of integers, return thekmost frequent elements.Example 1:Input: nums = [1,1,1,2,2,3], k = 2Output: [1,2]Example 2:Input: nums = [1], k = 1Output: [1]Note...

2019-01-19 16:45:15 294

转载 算法——错排问题

错排问题错排问题 就是一种递推式,不过它比较著名且常用,所以要熟记!方法一: n各有序的元素应有n!种不同的排列。如若一个排列式的所有的元素都不在原来的位置上,则称这个排列为错排。任给一个n,求出1,2,……,n的错排个数Dn共有多少个。递归关系式为:D(n)=(n-1)(D(n-1)+D(n-2))D(1)=0,D(2)=1可以得到:错排公式为 f(n) = n![1-1/1!+...

2019-01-19 16:07:26 2326

转载 数组2个的交集

Intersection of Two Arrays 两个数组相交Given two arrays, write a function to compute their intersection.Example:Given nums1 = [1, 2, 2, 1], nums2 = [2, 2], return [2].Note:Each element in the resul...

2019-01-19 14:43:17 125

转载 二叉树转换为双向链表

 解题思路:1.核心是中序遍历的非递归算法。2.修改当前遍历节点与前一遍历节点的指针指向。*struct TreeNode { int val; struct TreeNode *left; struct TreeNode *right; TreeNode(int x) : val(x), left(NULL), righ...

2019-01-19 14:14:51 725

转载 小孩分糖问题

问题描述There are N children standing in a line. Each child is assigned a rating value.You are giving candies to these children subjected to the following requirements:Each child must have at least o...

2019-01-19 14:04:44 519

转载 队列中取最大值操作问题用栈实现

问题:假设有这样一个拥有3个操作的队列:1. EnQueue(v): 将v加入队列中2. DeQueue(): 使队列中的队首元素删除并返回此元素3. MaxElement: 返回队列中的最大元素设计一种数据结构和算法,让MaxElement操作的时间复杂度尽可能地低。 思路:(1)用两个栈设计一个新的数据类型(数据类型定义为MyStack),其中一个栈用来存放数据,另一个...

2019-01-19 13:29:53 444

转载 滑动窗口中的最大值

题目描述题目描述给定一个数组和滑动窗口的大小,找出所有滑动窗口里数值的最大值例如,如果输入数组{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},最大值4{2,[3,4,2],6,2,5,1},最大...

2019-01-19 12:18:48 673

转载 有序数组中的平方个数

 题目如下:给你一个有序整数数组,数组中的数可以是正数、负数、零,请实现一个函数,这个函数返回一个整数:返回这个数组所有数的平方值中有多少种不同的取值。举例:nums = {-1,1,1,1}, 那么你应该返回的是:1。因为这个数组所有数的平方取值都是1,只有一种取值 nums = {-1,0,1,2,3} 你应该返回4,因为nums数组所有元素的平方值一共4种取值:1,0,4,...

2019-01-18 23:47:56 1390

转载 pow 的实现

要点:1 n的正负数2 double 类型的class Solution {public: double pow(double x, int n) { if(equal(x,0.0)&&n<0){ return 0; } double res=1; ...

2019-01-18 23:28:02 320

转载 跳跃游戏2

Given an array of non-negative integers, you are initially positioned at the first index of the array.Each element in the array represents your maximum jump length at that position.Your goal is to...

2019-01-18 23:22:37 135

转载 mysql数据库表清空后id如何从1开始自增

环境:         数据库:mysql我们的数据库表中经常会使用id自增,但是每次清空表后id并不是从1开始计数,总是接着之前的进行自增,那么解决呢?使用mysql的truncate命令,用法:truncate table 表名;这样表的id自增就会变回从1开始自增了。备注:该操作会清空您宝贵的数据库,我想题目已经说的够清楚了,请谨慎操作-----------------...

2019-01-18 11:56:37 5583 1

转载 atoi的实现

class Solution {public: int atoi(const char *str) { if(str==NULL){ //1 return 0; } int i=0; long long res=0; while(isspace(str[i])){//2 ...

2019-01-18 08:39:40 149

转载 Jump Game 跳跃游戏

Given an array of non-negative integers, you are initially positioned at the first index of the array.Each element in the array represents your maximum jump length at that position.Determine if yo...

2019-01-18 08:35:58 212

转载 Rotate Image 旋转图像

You are given an n x n 2D matrix representing an image.Rotate the image by 90 degrees (clockwise).Note:You have to rotate the image in-place, which means you have to modify the input 2D matrix d...

2019-01-18 08:19:52 3268

转载 3Sum Closest 最近三数之和

 Given an array S of n integers, find three integers in S such that the sum is closest to a given number, target. Return the sum of the three integers. You may assume that each input would have exac...

2019-01-18 07:45:03 100

转载 Trapping Rain Water 收集雨水

 Given n non-negative integers representing an elevation map where the width of each bar is 1, compute how much water it is able to trap after raining.For example, Given [0,1,0,2,1,0,1,3,2,1,2,1],...

2019-01-18 07:12:24 129

转载 House Robber III 打家劫舍之三

The thief has found himself a new place for his thievery again. There is only one entrance to this area, called the "root." Besides the root, each house has one and only one parent house. After a tour...

2019-01-17 23:16:58 587

转载 House Robber II 打家劫舍之二

You are a professional robber planning to rob houses along a street. Each house has a certain amount of money stashed. All houses at this place are arranged in a circle. That means the first house is ...

2019-01-17 23:10:26 367

转载 House Robber 打家劫舍

 You are a professional robber planning to rob houses along a street. Each house has a certain amount of money stashed, the only constraint stopping you from robbing each of them is that adjacent ho...

2019-01-17 23:08:53 122

转载 三个数的乘最大

 #include <iostream>#include <vector>#include <string>#include <algorithm>using namespace std;// long 类型 long long fun(vector<long long> &arr){ long...

2019-01-17 08:58:48 253

空空如也

空空如也

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

TA关注的人

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