自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(87)
  • 收藏
  • 关注

转载 递归算法讲解

原作者:书呆子Rico 《递归的内涵与经典应用》 http://my.csdn.net/justloveyou_摘要:  大师 L. Peter Deutsch 说过:To Iterate is Human, to Recurse, Divine.中文译为:人理解迭代,神理解递归。毋庸置疑地,递归确实是一个奇妙的思维方式。对一些简单的递归问题,我们总是惊叹于递归描述问题的能力和编写代码的简...

2018-10-31 18:51:52 329

转载 Docker价值分析(优缺点和谁在使用?)

Docker价值分析(优缺点和谁在使用?) 摘要:Docker,一个新的容器技术,它能够在相同的旧服务器上运行的更多的应用程序,这也使得它很容易打包和发布程序。它可以得到相同的硬件上比其他技术运行更多的应用(小的开销内存/ CPU/硬盘,这意味着更低成本);它使开发人员能够快速创建简单的,现成的运行容器化应用;它使管理和部署应用程序更加容易。 优点: https://...

2018-10-27 17:09:43 2542

转载 JSP技术的优缺点介绍

什么是JSP?JSP可用一种简单易懂的等式表示为:HTML+Java=JSP。JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。 Web服...

2018-10-27 15:47:50 35117

转载 B/S三层架构[转载]

三层架构(3-tier application) 通常意义上的三层架构就是将整个业务应用划分为:表现层(UI)、业务逻辑层(BLL)、数据访问层(DAL)。区分层次的目的即为了“高内聚,低耦合”的思想。  1、表现层(UI):通俗讲就是展现给用户的界面,即用户在使用一个系统的时候他的所见所得。  2、业务逻辑层(BLL):针对具体问题的操作,也可以说是对数据层的操作,对数据业务逻辑处理。  ...

2018-10-27 15:43:14 31016 3

原创 Java中使用Set进行并集,差集,交集查找

利用Java中使用Set进行并集,差集,交集查找首先命名一个类名为DealSet存放查找并集,差集,交集的方法DealSet.javapackage SetLearning;import java.util.HashSet;import java.util.Set;public class DealSet<T> {    private Set<T&gt...

2018-10-26 12:29:12 2131

原创 剑指offer算法题(一)二维数组中的查找

剑指offer算法题(一)题目1:二维数组中的查找在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。思路分析: 从左上往右下方来解决这个问题 例如在如下的矩阵中查找数字27:6    7    9    1010    13    19    2320    27...

2018-10-26 11:47:07 184

原创 Java--常用正则匹配符号

1、字母:匹配单个字母(1)A:表示匹配字母A;(2)\\:匹配转义字符“\”;(3)\t:匹配转义字符“\t”;(4)\n:匹配转义字符“\n”;2、一组字符:任意匹配里面的一个单个字符:(1)[abc]:表示可能是字母a,可能是字母b或者是字母c;(2)[^abc]:表示不是字母a,字母b,字母c的任意一个;(3)[a-zA-Z]:表示全部字母中的任意一个;...

2018-10-26 10:55:17 1846

转载 SOA和微服务架构的区别?

文章来源:1 https://www.zhihu.com/question/378084262 https://www.zhihu.com/people/xu-bing-yuan/activitiesSOA和微服务架构区别在网上看到了很多的说法,在这里给出贴出一份简介的回答。更加详细的回答可以参照:https://www.zhihu.com/question/37808426。...

2018-10-24 22:41:10 311

原创 系统架构师考试-案例

案例时间要求:90分钟, 3个大题   主要主题:1.软件架构设计与评估2.系统可靠和安全 (一般交替不同年出现) 70%概率3.软件系统建模(UML)4.Web应用(  MVC +面向服务 ) (分库(主从)+ 某层(持久层)+ 集群 + 性能提升)5.数据架构(关系型数据库,非关系型数据库, 缓存数据库,文件系统,数据库集群)  总结...

2018-10-24 21:52:51 3759

原创 java四舍五入

public class utils { public static void main(String[] args) { double a=1.2263; System.out.printf("%.2f",a); }}使用 System.out.printf对输出进行格式 控制,了解更多参看下面网址:https://blog.csdn.net...

2018-10-23 23:03:08 136

原创 Java Map 按Key排序和按Value排序

Map排序的方式有很多种,这里记录下自己总结的两种比较常用的方式:按键排序(sort by key), 按值排序(sort by value)。1、按键排序jdk内置的java.util包下的TreeMap<K,V>既可满足此类需求,向其构造方法 TreeMap(Comparator<? super K> comparator)  传入我们自定义的比较器即可实现按键...

2018-10-23 21:17:23 181

原创 算法设计常见坑

1. char 转 int问题注意char 转int会转换成相应的ASCII值解决办法是:先char转String ,在String 转int,如下:char a = '1';  Integer.parseInt(String.valueOf(c)) 

2018-10-22 21:36:32 250

原创 java Map常见使用方法

常用api:map.keyset注意:上面遍历存在三种:一种是只遍历key,使用keySet, 一种是只遍历value,使用vlaues , 还有一种是遍历key+value,并通过getKey和getValue获取指定的单元素 ...

2018-10-22 10:54:41 1279

原创 Java遍历Map对象的四种方式

关于java中遍历map具体哪四种方式,请看下文详解吧。方式一 这是最常见的并且在大多数情况下也是最可取的遍历方式。在键值都需要时使用。 1 2 3 4 Map<Integer, Integer> map = new HashMap<Integer, Integer>(); for (Map.Entry&...

2018-10-22 09:52:55 138

原创 7-18 猴子选大王

7-18 猴子选大王 (20 分)一群猴子要选新猴王。新猴王的选择方法是:让N只候选猴子围成一圈,从某位置起顺序编号为1~N号。从第1号开始报数,每轮从1报到3,凡报到3的猴子即退出圈子,接着又从紧邻的下一只猴子开始同样的报数。如此不断循环,最后剩下的一只猴子就选为猴王。请问是原来第几号猴子当选猴王?输入格式:输入在一行中给一个正整数N(≤1000)。输出格式:在一行中输出当选...

2018-10-22 09:39:22 451

原创 idea编码快捷键(常见)

1.for快速输出下面:for (int i = 0; i < student.length; i++) {  } 方法:对象+ "."+ i          //对象可以是int, pojo ,string 都行,但集合不行集合可以通过fori 生成上面语句,但也可以通过集合+"."+foreach使用迭代器生成for语句 2.换行:(没有";"会自动加上)...

2018-10-21 15:40:09 1330 1

原创 算法中常见函数操作

1.Math 常见:abs() min()max()sqrt()   //求平方根cbrt()   //求立方根round() //四舍五入,返回int 值rint() //四舍五入,返回double值random() //随机数floor() //返回小于参数的最大整数ceil()  //返回大于参数的最小整数 2.String ,String...

2018-10-21 13:49:04 213

原创 java在处理基本数据类型加减乘除操作注意

1.int /int 得到的结果转double举例:int a=1;int b=2;double d=a/b上面结果通常认为是0.5 ,但结果是0.0;正确的是:int a=1;int b=2;double d=(double)a/b 2. double与double 俩个数的加减乘除操作:需要使用 BigDecimal 类进行操作   BigDecimal...

2018-10-21 13:21:29 1634

原创 windows下spark的安装与配置教程

一、安装Scala 下载地址:http://www.scala-lang.org/download/all.html进入页面后选择一个Scala版本进行下载,我选择的是Scala2.12.0版本。特别注意的是看帖子又的说Scala版本与Spark版本之间是有一定关联的,比如说你的Scala版本是2.12.0,那么就应该下载Spark版本为从1.3.0到Spark 1.6.2之间的各个版本...

2018-10-20 13:16:42 6625 3

原创 spark学习回归理论和实战房价预测

1.2.3.spark提供的回归算法:线性回归算法概述:线性回归算法原理 最小二乘法求的是偏导,等于0 是为了使误差最小,所谓的二乘就是误差平方和  随机梯度下降(应用方便比较广)用于求预测值这是代价函数, 随机在于随机取n的数,没有都选,这样节省时间,1/2代表调节...

2018-10-19 23:02:36 1727

原创 spark学习习惯

spark常常是构建实时流项目来进行计算,在平时的学习和重点提高上面不是很方便,那么如何更加高效的学习spark呢?首先要是想高效,就得分段,这类似于项目开发中的组件化总结下flume+kafka+spark+mysql/hbase/redis运行方案:1.flume接受数据,输出数据2.kafka接受flume数据,转送到spark上3.spark接受kafka数据,处理数据...

2018-10-19 22:05:43 174

转载 谈谈RDD、DataFrame、Dataset的区别和各自的优势

在spark中,RDD、DataFrame、Dataset是最常用的数据类型,本博文给出笔者在使用的过程中体会到的区别和各自的优势共性:1、RDD、DataFrame、Dataset全都是spark平台下的分布式弹性数据集,为处理超大型数据提供便利2、三者都有惰性机制,在进行创建、转换,如map方法时,不会立即执行,只有在遇到Action如foreach时,三者才会开始遍历运算,极端情...

2018-10-19 21:53:16 390

原创 动态规划-最长公共子序列

一,问题描述给定两个字符串,求解这两个字符串的最长公共子序列(Longest Common Sequence)。比如字符串1:BDCABA;字符串2:ABCBDAB则这两个字符串的最长公共子序列长度为4,最长公共子序列是:BCBA 二,算法求解这是一个动态规划的题目。对于可用动态规划求解的问题,一般有两个特征:①最优子结构;②重叠子问题①最优子结构设 X=(x1,x2,...

2018-10-19 20:06:15 233

原创 Spark计算相关性系数(皮尔森、斯皮尔曼、卡方检验)

皮尔森、斯皮尔曼(pearson spearman):   import spark.implicits._   import org.apache.spark.mllib.stat.Statistics   import spark.sql     val df = sql(s"select * from xxxx ")       val columns = List("...

2018-10-19 14:27:48 6641

原创 掌握Spark机器学习库-06-基础统计部分

说明学习使用spark对数据进行描述性统计,在进行机器学习模型的训练之前,可以了解数据的总体情况本章主要讲解基础统计部分,包括基本统计、假设检验、相关系数等数据集数据集有两个文件,分别是:beijing.txt 北京历年降水量,不带年份 beijing2.txt 北京历年降水量,带年份源代码源代码比较少,故在此给出:基础统计val txt = sc.textF...

2018-10-19 13:56:50 508 2

原创 动态规划——矩阵连乘积

实验目的:理解动态规划算法的基本思想 运用动态规划算法解决实际问题实验内容:编程矩阵A1A2A3A4A5的连乘积,并给出最优的计算次序,其中各矩阵维数分别为:A1(20*30),A2(30*20),A3(20*15),A4(15*20),A5(20*10)实验步骤:package com.shiyan.org; public class Matrix {void ...

2018-10-19 12:38:36 1328

原创 [存储器] 简述影响 Cache 命中率的因素

简述影响 Cache 命中率的因素摘要: 存储器是计算机的核心部件之一。由于 CPU 和主存在速度上的存在着巨大差 异, 现代计算机都在 CPU 和主存之间设置一个高速、 小容量的缓冲存储器 cache。 Cache 最重要的技术指标是它的命中率。本文简单讨论了影响 Cache 命中率的几 个因素。关键字:cache 容量,块大小,替换算法,映射方式。一、引言 在计算机技术发展过程...

2018-10-18 21:01:31 7769 1

原创 寄存器的分类

数据寄存器数据寄存器主要用来保存操作数和运算结果等信息,从而节省读取操作数所需占用总线和访问存储器的时间。变址寄存器它们主要用于存放存储单元在段内的偏移量,用它们可实现多种存储器操作数的寻址方式(在第3章有详细介绍),为以不同的地址形式访问存储单元提供方便。 变址寄存器不可分割成8位寄存器。作为通用寄存器,也可存储算术逻辑运算的操作数和运算结果。指针寄存器主要用于存放堆栈内存储...

2018-10-18 18:57:00 7051

转载 CPU,寄存器,内存三者的关系

一、皇帝身边的小太监----寄存器    不知道什么是寄存器?那见过太监没有?没有?其实我也没有。没见过不要紧,见过就麻烦大了。^_^,大家都看过古装戏,那些皇帝们要阅读奏章的时候,大臣总是先将奏章交给皇帝旁边的小太监,小太监呢再交给皇帝同志处理。这个小太监只是个中转站,并无别的功能。    好,那我们再联想到我们的CPU。CPU 不就是我们的皇帝同志么?大臣就相当于我们的内存,数...

2018-10-18 16:54:29 261

转载 Python日志产生器

Python日志产生器写在前面 有的时候,可能就是我们做实时数据收集的时候,会有一个头疼的问题就是,你会发现,你可能一下子,没有日志的数据源。所以,我们可以简单使用python脚本来实现产生实时的数据,这样就很方便了在编写代码之前,我们得知道我们的webserver日志到底长什么样,下面我找了一段的nginx服务器上真实日志,作为样例:223.104.25.1 - - [21/Nov...

2018-10-18 16:51:25 175

原创 数据库设计一二三四范式有何区别

范化是在识别数据库中的数据元素、关系、以及定义所需的表和各表中的项目这些初始化工作之后的一个细化的过程。常见的范式有1NF 2NF 3NF BCNF以及4NF。1NF,第一范式。第一范式是指数据库表的每一列都是不可分割的基本数据项,同一列中不能有多个值,即实体中的某个属性不能有多个值或者不能有重复的属性。如果出现重复的属性,即可能需要定义一个新的实体。新的实体由重复的属性构成,新的实体和原来的...

2018-10-18 13:24:04 1216

转载 LRU原理和Redis实现——一个今日头条的面试题

很久前参加过今日头条的面试,遇到一个题,目前半部分是如何实现 LRU,后半部分是 Redis 中如何实现 LRU。我的第一反应是操作系统课程里学过,应该是内存不够的场景下,淘汰旧内容的策略。LRU ... Least Recent Used,淘汰掉最不经常使用的。可以稍微多补充两句,因为计算机体系结构中,最大的最可靠的存储是硬盘,它容量很大,并且内容可以固化,但是访问速度很慢,所以需要把使用的...

2018-10-17 16:34:09 172

原创 系统架构师笔记(四)

十五、可靠性可靠度:系统在规定的条件下、规定的时间内不发生失效的概率。失效率:(风险函数)运行至此刻系统未出现失效的情况下,单位时间系统出现失效的概率。可靠度计算方式:1)、串联:R1*R2*R3....2)、并联:1-(1-R1)*(1-R2)*(1-R3)...1、容错技术动态冗余:通过故障检测、故障定位及故障恢复等手段达到容错的目的。主要方式:多重模块待机储备,当系统检测到某工...

2018-10-16 22:25:13 258

原创 系统架构师笔记(三)

  1 Singleton 单件     2 Abstract Factory 抽象工厂模式     3 Builder 生成器模式     4 Factory Method 工厂方法模式     5 Prototype 原型模式     6 Adapter 适配器模式     7 Bridge 桥接模式     8 Composite 组合模式     9 Decorator ...

2018-10-16 22:24:00 206

原创 系统架构师笔记(二)

七、架构权衡分析法:ATAM(Architecture Tradeoff Analysis Method)评价软件架构的一种综合全面的方法。这种方法不仅可以揭示出构架满足特定质量目标的情况,而且(因为它认识到了构架决策会影响多个质量属性)可以使我们更清楚地认识到质量目标之间的联系——即如何权衡诸多质量目标。1、ATAM参与人员评估小组、项目决策者、构架涉众2、ATAM的结果ATAM评估将...

2018-10-16 22:07:29 250

原创 系统架构师笔记(一)

重点知识总结:一、质量属性:1、性能:系统的响应能力,即要经过多长时间才能对某个事件作出响应或者在某段时间内系统所能处理事件的个数。架构设计策略:增加计算资源、改善资源需求(减少计算复杂度等)、资源管理(并发、数据复制等)和资源调度(先进先出队列、优先级队列等)2、可用性:系统能够正常运行的时间比例。架构设计策略:Ping/Echo、心跳、异常和信息主动冗余等。3、可靠性:软件系统在应用或错...

2018-10-16 22:05:47 882

原创 redis集群如何解决重启不了的问题

redis使用集群部署,如果遇到断电或者服务器重启,当再次启动的时候,有时候会启动不了。需要使用trib的fix命令进行修复。如果修复还是不行的话,可以清除节点数据再重新建集群,前提要备份之后操作。工具 linux redis 方法/步骤 使用redis-cli连接上redis其中一台 redis-cli -c -h xxx -p 7001 输入cluster...

2018-10-16 10:41:08 4347

原创 Haproxy+Keeplived docker重启

docker start haproxy容器id #测试是否成功启动ping haproxy容器的ip注意:此时虽然启动了haproxy,但Keeplived 必须进入haproxy容器中启动才行#进入h1容器docker exec -it h1 bash#启动Keepalivedservice keepalived start#宿主机执行ping命令ping ...

2018-10-15 23:01:13 534

原创 Redis docker集群重启

当我们关闭虚拟机时, 而虚拟机上有6个redis集群,这是redis集群也就全部关闭了,那么如何重新启动redis集群呢?首先严谨起见,我们启动其中一个redis节点docker start r1 #我第一个redis容器的名字 lsof -i :5001 #redis 集群在启动时,我为容器指定了ip : 172.19.0.2, 映射端口是5001->6379 ,这里检查端口号...

2018-10-15 22:38:34 3024

原创 PXC(mysql集群) docker重启失败异常

PXC docker启动失败异常直接通过docker start node1 或者任何一个节点是启动不了的,原因是集群之前的同步机制造成的,启动任何一个节点,该节点都会去其它节点同步数据,其它节点仍处于宕机状态,所以该节点启动失败,这也是pxc集群的强一致性的表现,解决方式是,删除所有节点docker rm node1 node2 node3 node4 node 5和数据卷中的grast...

2018-10-15 21:41:18 3337 2

空空如也

空空如也

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

TA关注的人

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