- 博客(141)
- 资源 (15)
- 收藏
- 关注
转载 腾讯面试题:40亿个QQ号码如何去重?
今天,我们来聊一道常见的考题,也出现在腾讯面试的三面环节,非常有意思。具体的题目如下:文件中有40亿个QQ号码,请设计算法对QQ号码去重,相同的QQ号码仅保留一个,内存限制1G。这个题目的意思应该很清楚了,比较直白。为了便于大家理解,我来画个动图玩玩,希望大家喜欢。能否做对这道题目,很大程度上就决定了能否拿下腾讯的offer,有一定的技巧性,一起来看下吧。在原题中,实际有40亿个QQ号码,为了方便起见,在图解和叙述时,仅以4个QQ为例来说明。方法一:排序很自然地,最...
2021-12-20 07:46:32
1403
原创 中国居民18位身份证号验证方法
public static boolean validate18Idcard(String idcard){ if(idcard == null ) { return false; } if(idcard.length()!=18) { return false; } char [] id =idcard.toCharArray(); int i, sum...
2021-08-01 19:46:33
6242
转载 敏捷开发之研发流程
1. 敏捷开发是什么在传统的软件研发模型中,从提出需求到最后交付,时间周期较长。瀑布模型遵循需求分析、设计、编码、集成、测试、维护六个步骤进行。一旦需求发生变化,不仅浪费前期投入,还不易于调整。敏捷开发是一种应对快速变化的需求的软件开发能力。特别是互联网软件,前期设计不可能十分完美,在研发的过程中,会不断地调整、优化。敏捷开发是面向交付、面向协作的。相较于主张完善的设计、文档、流程规范,敏捷开发强调的是持续交付,让目标更早得到验收,让缺陷更早暴露。在实践过程中,我们需要保持 1-2 周的迭代
2021-07-31 14:30:42
698
原创 筑巢大数据,引得凤凰来
1月19日公布的一份“人才前景趋势大数据报告”显示,2017年三季度到2018年四季度,贵阳以7.17%的高端人才流入率超过西安、成都,名列全国第五,西部第一。以往的人才洼地成了如今的人才聚集地,人才流的背后是数据流的变化。2018年4月,腾讯官微发布了要在贵州建立“鹅厂”的消息。企鹅是腾讯标志,“鹅厂”代表腾讯最重要的大数据中心,这意味着所有微信、QQ用户的核心信息都将储存在贵州。建在山洞里...
2019-01-25 04:21:39
313
转载 Mac下使用mysql控制台命令行
命令行中输入open .bash_profile然后将alias mysql=/usr/local/mysql/bin/mysqlalias mysqladmin=/usr/local/mysql/bin/mysqladmin追加到最后面,如果文件不存在,自己创建一个就可以了然后保存然后输入source .bash_profile最后就能使用mysql来使用she...
2018-11-25 21:52:21
574
转载 Spring AOP 实现原理
什么是AOPAOP(Aspect-OrientedProgramming,面向方面编程),可以说是OOP(Object-Oriented Programing,面向对象编程)的补充和完善。OOP引入封装、继承和多态性等概念来建立一种对象层次结构,用以模拟公共行为的一个集合。当我们需要为分散的对象引入公共行为的时候,OOP则显得无能为力。也就是说,OOP允许你定义从上到下的关系,但并不适合定义从...
2018-10-19 05:34:42
196
转载 谈谈对Spring IOC的理解
学习过Spring框架的人一定都会听过Spring的IoC(控制反转) 、DI(依赖注入)这两个概念,对于初学Spring的人来说,总觉得IoC 、DI这两个概念是模糊不清的,是很难理解的,今天和大家分享网上的一些技术大牛们对Spring框架的IOC的理解以及谈谈我对Spring Ioc的理解。一、分享Iteye的开涛对Ioc的精彩讲解 首先要分享的是Iteye的开涛这位技术牛人对Sp...
2018-10-19 05:30:53
192
转载 MySQL重要指令
\c终止当前正在输入的指令如果提示符变成 '> 或 ">,说明引号未封闭,此时输入任何指令都会被忽略,包括quit。应该先输入一个引号,再输入指令。show create table table_name;可以显示表格的详细信息,包括约束。describe table_name;显示表格的样式如果查询条件是不等于null,应该用XXX is not null 而不是 XXX!=...
2018-10-19 05:28:08
184
转载 Spring Boot 入门之基础篇
原文地址:Spring Boot 入门之基础篇(一)博客地址:http://www.extlight.com一、前言Spring Boot 是由 Pivotal 团队提供的全新框架,其设计目的是用来简化新 Spring 应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。本系列以快速入门为主,可当作工具小手册阅读二、环境搭建...
2018-09-30 11:36:53
159
转载 Docker镜像的创建、存出、载入
创建镜像的方法有三种:基于已有镜像的容器创建、基于本地模板导入、基于Dockerfile创建,本博文讲解前两种。基于已有镜像的容器创建该方法是使用docker commit命令,其命令格式为: docker commit [OPTIONS] CONTAINER [REPOSITORY[:TAG]]主要参数选项包括:-a ,–author=”” 作者信息 -m,–messa...
2018-09-29 14:58:06
238
原创 MySQL create database 指定utf-8编码
如下脚本创建数据库yourdbname,并制定默认的字符集是utf8。CREATE DATABASE IF NOT EXISTS yourdbname DEFAULT CHARSET utf8 COLLATE utf8_general_ci;如果要创建默认gbk字符集的数据库可以用下面的sql:create database yourdb DEFAULT CHARACTER SET g...
2018-08-15 13:24:42
71783
转载 wordpress个人博客申请Let’s Encrypt免费SSL证书
最近,在网上火透半边天的,非 Let’s Encrypt 的免费SSL证书莫属了。Let’s Encrypt 是一个将于2015年末推出的数字证书认证机构,将通过旨在消除当前手动创建和安装证书的复杂过程的自动化流程,为安全网站提供免费的SSL/TLS证书,同时,它还是免费、自动化、开放的证书签发服务。Let’s Encrypt的证书申请和续期都非常方便,默认的证书有效期是90天,通过cron的定时...
2018-08-08 14:49:53
2663
转载 curl模拟http发送get或post接口测试
一、get请求 curl "http://www.baidu.com" 如果这里的URL指向的是一个文件或者一幅图都可以直接下载到本地curl -i "http://www.baidu.com" 显示全部信息curl -l "http://www.baidu.com" 只显示头部信息curl -v "http://www.baidu.com" 显示get请求全过程解析wge...
2018-08-05 13:55:28
534
原创 Fatal error: Please read "Security" section of the manual to find out how to run mysqld as root
原因: 这是因为在测试的时候,使用root来启动的。而从安全角度来讲,不建议用root用户启动。解决方案:/usr/sbin/mysqld --skip-grant-tables --skip-networking --user=root &...
2018-08-05 13:52:18
9119
1
原创 docker images 导入导出
导出镜像如果要存出镜像到本地文件,可以使用docker save命令。例如,存出本地的ubuntu:14.04镜像为文件ubuntu_14.04.tar:$ sudo docker save -o /home/user/images/ubuntu_14.04.tar ubuntu:14.04导入镜像可以使用docker load从存出的本地文件中再导入到本地镜像库,例如从文件ubunt...
2018-08-05 13:47:02
20667
原创 执行Git命令时出现SSL certificate problem的解决办法
提示错误:SSL certificate problem: self signed certificate解决办法:用git自带的配置命令:git config --global http.sslVerify false
2018-08-01 15:42:23
4983
1
转载 如何在现有的 Linux 系统上添加新的磁盘
fdisk 是一个在 Linux 系统上用于显示和管理硬盘和分区命令行工具。#fdisk-l这个命令会列出当前分区和配置。查看 Linux 分区详情添加了 20GB 容量的硬盘后,fdisk -l 的输出像下面这样。#fdisk-l查看新分区详情新添加的磁盘显示为 /dev/xvdc。如果我们添加的是物理磁盘,基于磁盘类型它会显示为类似 /dev/sda。这里我使用的是虚拟磁盘。要在特定硬盘上分区...
2018-07-05 16:06:07
391
原创 将/usr挂载到新的硬盘分区
1.创建硬盘分区,格式化为ext4文件系统。2.将临时目录/tmp/mnt 挂载到该分区3. cp -ax /usr/* /tmp/mnt 将/usr分区现有内容拷贝到/tmp/mnt分区4.将/tmp/mnt分区卸载,这一步非常关键 umount -v /tmp/mnt/5. mv /usr /usr.old mkdir /usr (挂载点)6.在/etc/fstab中设置开机挂载/u...
2018-07-05 16:03:34
1762
转载 如何使用maven打成一个可直接运行的jar包
<build><plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-assembly-plugin</artifactId> <version&a
2018-06-19 16:20:37
2092
转载 MySQL建表报Error : Invalid default value for 'timestamp'
环境 :mysql 5.7.16系统:unbutu 14解决方案:1、打开/etc/my.cnf 配置文件在最后添加如下:explicit_defaults_for_timestamp = truesql_mode=STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION保存,...
2018-06-14 13:46:12
1627
转载 ERROR 1010 (HY000): Error dropping database (can't rmdir './test/', errno: 17)
在删除数据库的时候报标题所示错误mysql> drop database test;ERROR 1010 (HY000): Error dropping database (can't rmdir './test/', errno: 17) 问题原因:test目录下存在着MySQL数据库不知道的文件,即MySQL数据库中没有该文件的数据字典信息。如下所示,[root@localhost d...
2018-06-13 22:31:22
4678
转载 ajax post参数后台Tomcat 7获取不到的问题
AJAX post传参后台获取不到查询参数。网上找了各种方法,包括设置content-type,又是把json转成json格式字符串,问题依然存在,但是把post改成get又可以获取到,百思不得其解。后来看tomcat7配置的时候,把maxPostSize="0"的配置去掉的时候问题消失。根据以往的经验,maxPostSize="0"不就是不限制post数据的大小的么,怎么还反倒限制了数据的大小了...
2018-05-26 19:19:55
667
原创 MySQL修改密码
MySQL 5.x方法1: 用SET PASSWORD命令 首先登录MySQL。 格式:mysql> set password for 用户名@localhost = password('新密码'); 例子:mysql> set password for root@localhost = password('123'); 方法2:用mysqladmin 格式:mysqla...
2018-05-09 17:24:24
1270
转载 MySQL主从复制
MySQL之间数据复制的基础是二进制日志文件(binary log file)。一台MySQL数据库一旦启用二进制日志后,其作为master,它的数据库中所有操作都会以“事件”的方式记录在二进制日志中,其他数据库作为slave通过一个I/O线程与主服务器保持通信,并监控master的二进制日志文件的变化,如果发现master二进制日志文件发生变化,则会把变化复制到自己的中继日志中,然后slave的...
2018-05-09 17:17:51
176
转载 MySQL使用Mycat实现读写分离
一,Mycat下载 http://www.mycat.io/是Mycat的官方网站,到这个网站可以进行Mycat的下载,在官网还可以下载《Mycat权威指南》pdf的电子档,下载Mycat的源码。目前最新稳定的Mycat版本是Mycat1.6, Mycat有window,linux,unix,mac平台对应的版本,我这里也使用下载的是window下的1.6版本来实现读写分离。进行读写...
2018-05-09 17:10:05
650
原创 Centos 7 安装MySQL 8.0
1、先去MYSQL官网下载mysql-8.0.11-1.el7.x86_64.rpm-bundle.tar,解压如下:mysql-8.0.11-1.el7.x86_64.rpm-bundle.tarmysql-community-client-8.0.11-1.el7.x86_64.rpmmysql-community-common-8.0.11-1.el7.x86_64.rpmmysql-com...
2018-05-07 14:57:51
413
转载 Centos 7部署汉化版gitlab
===============================================2017/11/12_第6次修改 ccb_warlock 更新说明:2017/11/12:五中增加管理员账号的内容2017/11/8:修复3.6中命令错误的问题;2017/10/20:3.4中增加“途径2:从官方获取RPM包后上传到/root目录下”的内容;4....
2018-04-27 15:00:48
149
转载 Java 进程占用 VIRT 虚拟内存超高的问题研究
1. 现象最近发现线上机器 java 8 进程的 VIRT 虚拟内存使用达到了 50G+,如下图所示:2. 不管用的 -Xmx首先第一想到的当然使用 java 的 -Xmx 去限制堆的使用。但是无论怎样设置,都没有什么效果。没办法,只好开始苦逼的研究。3. 什么是 VIRT现代操作系统里面分配虚拟地址空间操作不同于分配物理内存。在64位操作系统上,可用的最大虚拟地址空间有16EB,即大概180亿G...
2018-04-26 16:03:28
2658
转载 JDK 1.5 - 1.8 各版本的新特性总结
以下介绍一下JDK1.5版本到JDK1.7版本的特性及JDK1.8主要部分特性。仅供参考。JDK1.5新特性1:自动装箱与拆箱:自动装箱:每当需要一种类型的对象时,这种基本类型就自动地封装到与它相同类型的包装中。自动拆箱:每当需要一个值时,被装箱对象中的值就被自动地提取出来,没必要再去调用intValue()和doubleValue()方法。自动装箱,只需将该值赋给一个类型包装器引用,java会...
2018-04-18 22:15:47
353
转载 sh脚本异常:/bin/sh^M:bad interpreter: No such file or directory
在Linux中执行.sh脚本,异常/bin/sh^M: bad interpreter: No such file or directory。分析:这是不同系统编码格式引起的:在windows系统中编辑的.sh文件可能有不可见字符,所以在Linux系统下执行会报以上异常信息。解决:1)在windows下转换:利用一些编辑器如UltraEdit或EditPlus等工具先将脚本编码转换,再放到Linu...
2018-03-10 16:57:50
404
转载 Linux如何查看端口状态
netstat命令各个参数说明如下: -t : 指明显示TCP端口 -u : 指明显示UDP端口 -l : 仅显示监听套接字(所谓套接字就是使应用程序能够读写与收发通讯协议(protocol)与资料的程序) -p : 显示进程标识符和程序名称,每一个套接字/端口都属于一个程序。 -n : 不进行DNS轮询,显示IP(可以加速操作)即可显示当前服务器上所有端口及进程服务,于grep结合可查...
2018-03-10 16:56:15
311
原创 Peer authentication failed for user "postgres" 的解决办法
1. Peer authentication 是默认的配置,如果你的计算机用户名和你的postgres数据库名是一样的话,那么就不会出现此错误,不需要为你的数据库设置密码。2. md5 authentication,它需要密码。而我的计算机用户名和我的数据库名不一致,所以需要把Peer authentication改成md5 authentication,然后给数据库设置密码。在哪里改?执行命令:...
2018-03-10 15:08:27
9753
1
转载 git放弃文件修改和版本回退
一、放弃对git管理的文件修改条件:bb.txt文件已经被git管理 过程:发现bb.txt文件被修改了,发现改了之后不是自己想要的结果 目的:想恢复到没有被修改的状态 解决办法: git checkout bb.txtgit放弃对当前文件夹的所有文件的修改? git checkout .二、对没有被git管理的文件修改 条件:cc.txt文件没有被git管理 过程:添加的文件太多太紊乱了, 目的...
2018-03-10 14:21:28
2525
原创 Centos 7 安装 PostgreSQL 10
1.安装存储库yum install https://download.postgresql.org/pub/repos/yum/10/redhat/rhel-7-x86_64/pgdg-centos10-10-1.noarch.rpm2.安装客户端yum install postgresql103.安装服务端yum install postgresql10-server4.验证是否安装成功rpm...
2018-03-10 13:58:31
696
转载 PostgreSQL pg_dump&pg_restore数据的备份与恢复
# pg_dump --helppg_dump dumps a database as a text file or to other formats.Usage: pg_dump [OPTION]... [DBNAME] 数据库名放最后,不指定默认是系统变量PGDATABASE指定的数据库。General options:(一般选项) -f, --file=FILENAME ...
2018-03-09 14:59:50
9002
原创 [异常处理]java.lang.NoClassDefFoundError: org/jaxen/JaxenException
Exception in thread "main" java.lang.NoClassDefFoundError: org/jaxen/JaxenException at org.dom4j.DocumentFactory.createXPath(DocumentFactory.java:230) at org.dom4j.tree.AbstractNode.createXPat...
2018-03-02 13:32:30
7891
原创 Error unmarshalling xml in java-8 secure-processing org.xml.sax.SAXNotRecognizedException
Error unmarshalling xml in java-8 “secure-processing org.xml.sax.SAXNotRecognizedException causing java.lang.IllegalStateException”We added this dependency to a couple of our pom.xml files<dependen...
2018-03-02 13:29:09
788
转载 Git修改commit的作者信息
问题在公司和宿舍使用不同的 git 邮箱账号,结果 commit 的时候忘记修改配置导致 commit 的个人名称和邮箱都不对解决方法修改 git 配置git config --global user.email "youremail@googl.com"git config --global user.name "your name"但是补救措施只对以后的 commit 起效, 如果想修改之前...
2018-02-28 19:09:04
3370
原创 使用wget下载jdk1.8
For 64Bitwget --no-cookies --no-check-certificate --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F; oraclelicense=accept-securebackup-cookie" "http://download.oracle.com/otn-pub/java/jdk/8u141...
2018-02-09 18:45:30
15295
2
容器技术大会ppt
2018-10-08
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人