4 廿半

尚未进行身份认证

暂无相关简介

等级
TA的排名 6w+

剑指offer——java刷题总结【七】

Note题解汇总:剑指offer题解汇总代码地址:Github 剑指offer Java实现汇总点击目录中的题名链接可直接食用题解~有些解法博文中未实现,不代表一定很难,可能只是因为博主太懒```(Orz)如果博文中有明显错误或者某些题目有更加优雅的解法请指出,谢谢~目录题号题目名称61序列化二叉树62二叉搜索树的第k个节点63数据流中的中位...

2020-01-16 09:18:18

剑指offer——java刷题总结【六】

Note题解汇总:剑指offer题解汇总代码地址:Github 剑指offer Java实现汇总点击目录中的题名链接可直接食用题解~有些解法博文中未实现,不代表一定很难,可能只是因为博主太懒```(Orz)如果博文中有明显错误或者某些题目有更加优雅的解法请指出,谢谢~目录题号题目名称51构建乘积数组52正则表达式匹配53表示数值的字符串...

2020-01-14 11:04:14

剑指offer——java刷题总结【五】

Note题解汇总:剑指offer题解汇总代码地址:Github 剑指offer Java实现汇总点击目录中的题名链接可直接食用题解~有些解法博文中未实现,不代表一定很难,可能只是因为博主太懒```(Orz)如果博文中有明显错误或者某些题目有更加优雅的解法请指出,谢谢~目录题号题目名称41和为S的连续正数序列42和为S的两个数43左旋转字符串...

2020-01-12 17:54:46

剑指offer——java刷题总结【四】

Note题解汇总:剑指offer题解汇总代码地址:Github 剑指offer Java实现汇总点击目录中的题名链接可直接食用题解~有些解法博文中未实现,不代表一定很难,可能只是因为博主太懒```(Orz)如果博文中有明显错误或者某些题目有更加优雅的解法请指出,谢谢~目录题号题目名称31从1到n整数中1出现的次数32把数组排成最小的数33丑数...

2020-01-10 11:41:29

剑指offer——java刷题总结【三】

目录题号题目名称21栈的压入、弹出序列22从上往下打印二叉树23二叉搜索树的后序遍历序列24二叉树中和为某一值的路径25复杂链表的复制26二叉搜索树与双向链表27字符串的排列28字符串的排列29字符串的排列30连续子数组的最大和Note目录地址:剑指offer题解汇总代码地址:Github ...

2020-01-09 15:47:43

剑指offer——java刷题总结【二】

目录题号题目名称11二进制中1的个数12数值的整数次方13调整数组顺序使奇数位于偶数前面14链表中倒数第k个结点15反转链表16合并两个排序的链表17树的子结构18二叉树的镜像19顺时针打印矩阵20包含min函数的栈Note代码地址:Github 剑指offer刷题总结有些解法博文中未实现,...

2020-01-02 09:55:22

剑指offer——Java刷题总结【一】

目录题号题目名称1二维数组中的查找2替换空格3从尾到头打印链表4重建二叉树5用两个栈实现队列6旋转数组的最小数字7斐波那契数列8跳台阶9变态跳台阶10矩形覆盖Note代码地址:Github 剑指offer刷题总结 (代码已编号)有些解法博文中未实现,不代表一定很难,可能只是因为博主太懒```...

2019-12-27 15:31:44

剑指offer题解汇总

目录题号题目名称1二维数组中的查找2替换空格3从尾到头打印链表4重建二叉树5用两个栈实现队列6旋转数组的最小数字7斐波那契数列8跳台阶9变态跳台阶10矩形覆盖未完待续··Note代码地址:Github 剑指offer刷题总结 (代码已编号)有些解法博文中未实现,不代表一定很难,可能只是因为...

2019-12-27 15:30:36

在Github上进行合作开发

概述之前Github支持开源,建立私有仓库需要付费,因此一般都是在服务器上搭建自己的Git或者SVN。最近又有建私有仓库的需求,于是在Github上搜寻了一下,发现Github现在对免费用户也开放了建立私有仓库的功能,故在此纪录下所有步骤,供大家学习交流。需要注意的是,虽然Github开放了建立私有仓库的功能,但是实测免费用户最多只能够添加三位collaborators,如果是一个更大的团队进...

2019-11-18 16:44:01

图解最短路径之弗洛伊德算法(Java实现)

概述Floyd算法又称为插点法,是一种利用动态规划的思想寻找给定的加权图中多源点之间最短路径的算法,与Dijkstra算法类似。该算法是一种在具有正或负边缘权重(但没有负环)的加权图中找到最短路径的算法,即支持负权值但不支持负权环。弗洛伊德算法采用的是动态规划思想,其状态转移方程如下:其中matrix[i,j]表示i到j的最短距离,k是穷举i到j之间可能经过的中间点,当中间点为k时,...

2019-05-28 13:34:57

图解最短路径之迪杰斯特拉算法(Java实现)

概述迪杰斯特拉算法是由荷兰计算机科学家狄克斯特拉于1959 年提出的,因此又叫狄克斯特拉算法。是从一个顶点到其余各顶点的最短路径算法,解决的是有权图中最短路径问题。迪杰斯特拉算法主要特点是以起始点为中心向外层层扩展,直到扩展到终点为止。迪杰斯特拉算法采用的是贪心策略,将Graph中的节点集分为最短路径计算完成的节点集S和未计算完成的节点集T,每次将从T中挑选V0->Vt最小的节点Vt加入...

2019-05-10 20:04:43

Neo4j部署和数据导入

Neo4j部署1、下载安装包wget https://neo4j.com/artifact.php?name=neo4j-community-3.5.3-unix.tar.gz2、解压请不要因为文件名而质疑该文件是否完整,下载下来的文件名的确很奇怪,把请求的参数都带进去了。tar -zxvf artifact.php?name=neo4j-community-3.5.3-unix.ta...

2019-03-29 23:22:21

Solr+Hbase+Hbase Indexer查询方案流程整合

概述博客 亿级数据多条件组合查询——秒级响应解决方案简述了Hbase+Solr的亿级数据多条件组合查询的解决方案,但是当时并未将HBaseIndexer这一组件加入进来,而是暂时采用手工的形式对Hbase和Solr的数据进行同步。本文基于该解决方案,使用HbaseIndexer的原生组件对Hbase和Solr中的数据进行增删改查的同步,简述整个Solr+Hbase+HbaseIndexer解决方...

2019-01-15 18:10:17

LeetCode刷题总结(基础篇)

概述最近刷了一些LeetCode题,都是比较简单的基础题,给出这段时间刷题的一些总结,都是比较基础的东西,仅供刚开始刷题的同学们参考。总结HashMap中的containsKey是将key直接进行hash,从连续的存储单元中找到指定下标。注意Integer整型的溢出,可以根据同号相加为异号判断溢出。最长公共前缀——找到最短的String、将该String设置为前缀、遍历strs数组,若...

2019-01-08 09:25:35

volatile和synchronized的区别

概述在Java中,为了在多线程环境读写数据时保证数据的一致性,可以采用两种方式:线程同步和使用volatile关键字。线程同步资源共享的两个原因是资源紧缺和共建需求。线程共享CPU是从资源紧缺的维度考虑,而多线程共享变量通常是从共建需求的维度考虑的。在多个线程对同一个变量进行写操作时,如果操作没有原子性,就可能产生脏数据。所谓原子性操作,便是一系列不可分割的操作指令,要么全部执行,要么全部都...

2018-11-18 15:56:01

Spark RDD之Partitioner

概述Partitioner是shuffle过程中key重分区时的策略,即计算key决定k-v属于哪个分区,Transformation是宽依赖的算子时,父RDD和子RDD之间会进行shuffle操作,shuffle涉及到网络开销,由于父RDD和子RDD中的partition是多对多关系,所以容易造成partition中数据分配不均匀,导致数据的倾斜。Shuffle在MapReduce框架中,...

2018-11-03 11:06:02

Spark RDD之Dependency

概述Partition是数据切分的逻辑,而Dependency是在Transformation过程中Partition的演化过程,根据Dependency的类型判断数据的处理方式,Dependency可以分为NarrowDependency(窄依赖)和ShuffleDependency(宽依赖)。Dependency是一个抽象类,只有一个属性RDD,该RDD为对应RDD的父RDD,因此Depen...

2018-10-28 17:12:19

Spark RDD之Partition

RDD概述RDD是一个抽象类,主要包含五个部分:partitions列表计算每一个split的函数依赖rdd的列表(dependencies)键值对rdd的partitioner计算每个split的首选位置列表其中最后两个部分是可选的,以上五个部分对应着五个方法: @DeveloperApi def compute(split: Partition, context: T...

2018-10-28 17:06:24

亿级数据多条件组合查询——秒级响应解决方案

概述组合查询为多条件组合查询,在很多场景下都有使用。购物网站中通过勾选类别、价格、销售量范围等属性来对所有的商品进行筛选,筛选出满足客户需要的商品,这是一种典型的组合查询。在小数据量的情况下,后台通过简单的sql语句便能够快速过滤出需要的数据,但随着数据量的增加,继续使用sql语句,查询效率会直线下降。当数据量达到一定的量级,服务器将会不堪重负甚至面临挂掉的危险,并且大数据量的存储也成为了一个问...

2018-10-13 16:29:38

CDH平台Solr initialize failed错误分析与暴力解决方法

搭建好cdh平台之后,不知道误删了什么文件,导致添加Solr服务时在初始化阶段显示Solr initialize failed,初始化失败,重新安装服务甚至多次重新安装cdh平台依然是这种状况。查看日志显示如下:15/Sep/2018 18:52:53 +0000 org.apache.solr.common.cloud.ZkStateReader$3 processWARNING: Zoo...

2018-09-18 13:58:05

查看更多

勋章 我的勋章
  • GitHub
    GitHub
    绑定GitHub第三方账户获取
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv1
    勤写标兵Lv1
    授予每个自然周发布1篇到3篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。