自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

俺叫赵小邪的博客

当你的能力撑不起你的野心时,你需要静下来心来学习了

  • 博客(13)
  • 资源 (3)
  • 收藏
  • 关注

原创 数据结构之单链表

由于顺序表再插入或者删除时需要移动大量数据,并且如果表比较大, 会比较难分配连续的存储空间导致存储数据失败。因此可以采用链表结构,链表结构是一种动态存储分配的结构形式,可以根据需要动态的申请所需的存储单元。 链表又分为单链表,双向链表,以及单循环链表,多重链的循环链表。本文先介绍单链表。 典型的单链表结构如图所示: 链表每个结点都应包括如下内容:数据部分,保存的是该结点的实际数据。

2017-03-31 23:59:46 836

原创 Redis初探03——Redis的hash数据类型及操作

Redis hash是一个String类型的field和value的映射表。他的添加、删除操作都是O(1)(平均)。hash特别适用于存储对象。相较于将对象的每个字段存成单个String类型。将一个对象存储在hash类型中会占用更少的内存,并且可以更方便的存取整个对象。 操作: 1、hset 设置hash field的指定值,如果key不存在则先创建。hset hash表名称 field va

2017-03-30 12:48:02 323

原创 数据结构之顺序表

顺序表就是按照顺序存储方式存储的线性表,该线性表的结点按照逻辑次序一次存放在计算机的一组连续的存储单元中如下图: 由于顺序表是一次存放的,只要知道了该顺序表的首地址以及每个数据元素所占用的存储长度,那么我们就很容易计算出任何一个数据元素(也就是数据系结点)的位置。 1、结点数据类型:public class MySeqNode { String key; //关键字 S

2017-03-30 12:44:09 2428

原创 Redis初探02——Redis的String数据类型及操作

String类型是最简单的类型,一个key对应一个value,Stirng类型是二进制安全的。Redis的String可以包含任何数据,比如jpg图片或者序列化的对象。 操作: 1、set 设置key对应的值为String类型的value。 例:设置一个name=zhaojw的键值对,然后在get出name的值,再次设置name=zhaojw01,再get后发现值被覆盖:127.0.0.1:

2017-03-29 16:24:19 382

原创 Redis初探01——Redis介绍,安装与配置文件解析

一、NoSQL(Not Only SQL)介绍: NoSQL不仅仅为sql,意为反sql运动,是一项全新的数据库革命性运动,早期就有人提出,它指的是非关系型的数据库。适用于超大规模的和高并发的网站。 NoSql是以key-value形式存储,和传统的关系型数据库不一样,不一定遵循传统数据库的一些基本要求,比如说遵循SQL标准,ACID属性(事务相关),表结构等,这类数据库主要有以下特点:非关系型

2017-03-29 16:19:52 2524

转载 生产者/消费者问题的多种Java实现方式

生产者消费者问题是研究多线程程序时绕不开的经典问题之一,它描述是有一块缓冲区作为仓库,生产者可以将产品放入仓库,消费者则可以从仓库中取走产品。解决生产者/消费者问题的方法可分为两类: (1)采用某种机制保护生产者和消费者之间的同步; (2)在生产者和消费者之间建立一个管道。 第一种方式有较高的效率,并且易于实现,代码的可控制性较好,属于常用的模式。第二种管道缓冲区不易控制,被传输数据对象不易于

2017-03-29 01:19:11 2244

转载 实现Java线程同步的五种方法

线程同步概念 Java允许多线程并发控制,当多个线程同时操作一个可共享的资源变量时(如数据的增删改查),将会导致数据不明确,相互之间产生冲突,因此加入同步锁以避免在该线程没有完成操作之前,被其他线程的调用,从而保证了该变量的唯一性和准确性。 一、 同步方法 使用synchronized关键字修饰的方法。由于java的每个对象都有一个内置锁,当用关键字修饰此方法时,内置锁会保

2017-03-29 01:16:09 7561

原创 多线程六种状态

线程可以有如下六种状态: 1、New(新创建) 2、Runable(可运行) 3、Blocked(被阻塞) 4、Waiting(等待) 5、Timed waiting(计时等待) 6、terminated(被终止) 状态图如图: 一、新创建线程 当用new操作符创建一个新线程时,如new Thread(thread),改线程还有没有开始运行,此时他的状态是new。当一个线

2017-03-29 01:12:47 566 1

原创 汉诺塔问题

import java.util.Scanner;/** * 汉诺塔问题 * 不考虑中转,只考虑起始柱子到目标柱子的移动 * 记住始终一点:中间一个不管是啥柱子,都是中转,盘子移动只发生在起始到目标柱子 * @author Administrator * */public class HanoiTest { private static long count=0; @Sup

2017-03-17 01:04:11 261

原创 常用数据结构

1、数组(Array) 数组是一种聚合数据类型,是将具有相同类型的若干变量有序的组织在一起的集合。数组可以分为整形数组、字符型数组、浮点型数组、对象型数组等。数组还可以有一维,二维数组、多维第表现形式。 2、栈(Stack) 栈是一种特殊的线性表,其中能在一个表的一个固定端进行数据结点的插入和删除操作。栈按照后进先出的原则来存储数据,先插入的数据将被压入栈底,最后插入的数据

2017-03-05 21:33:19 315

原创 Hadoop——序列化

序列化是指将结构化对象转化为字节流以便在网络上传输或写到磁盘进行永久存储的过程。反序列化是指将字节流传回结构化对象的逆过程。 序列化在分布式数据处理的两大领域经常出现:进程间通信和永久存储。 在Hadoop中,系统中多个节点上进程间的通信是通过“远程过程调用”(RPC)实现的。RPC协议将消息序列化成二进制流后发送到远程节点,远程节点接着将二进制流反序列化为原始消息。 RPC序列化格式特点:1

2017-03-03 11:50:01 502

原创 Hadoop分布式文件系统HDFS——Flume和Sqoop导入数据,distcp并行复制,Hadoop存档

一、Flume和Sqoop导入数据 Apache Flume是一个将大规模流数据导入HDFS的工具,最典型的应用是从另外一个系统中手机日志数据。比如银行的网络服务器。其特性如下:1、 Flume能够支持大量的数据源,其中的一些通常用于包含tail(通过管道的方式将本地文件写入Flume中),syslog和apache log4j(允许java应用通过Flume将事件写入HDFS中的文件)

2017-03-03 11:25:15 1417

原创 Hadoop分布式文件系统——HDFS回收站

一、HDFS的Trasg回收站 和Linux系统的回收站一样,HDFS会为每一个用户创建一个回收站目录:/user/用户名/.Trash/,每一个被用户通过shell删除的文件/目录。在系统的回收站中都有一个周期。也就是当系统回收站的文件/目录在一段时间之后没有被用户回收的话,HDFS就会自动的把这个文件/目录彻底删除,之后,用户就永远找不回找个文件/目录了。 配置:在每个节点(不仅仅

2017-03-03 11:22:14 460

java使用poi读取xls格式和xlsx格式的excel文件

java使用poi读取xls格式和xlsx格式的excel文件

2017-02-17

java读取tar.gz压缩文件的jar包

java读取tar.gz压缩文件的jar包

2016-09-01

java读取zip压缩文件第三方jar包

java读取zip压缩文件第三方jar包

2016-09-01

空空如也

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

TA关注的人

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