自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

嘤其鸣矣,求其友声

热爱技术,热爱生活

  • 博客(34)
  • 资源 (5)
  • 收藏
  • 关注

原创 Python JSON格式处理

从外部读入的json经过loads反序列化后可以转换为dict类型的数据 dict类型的数据可以通过dumps转换为json格式的数据param = self.request.body.decode('utf-8')dict_data = json.loads(param)json_data = json.dumps(dict_data)

2017-08-04 11:48:41 538

原创 KMP算法的理解

首先参考阮一峰的KMP博文,简单明了。看完这篇文章以及其他相关文章,我大概知道整个过程该怎么算,但是仍然不明白这个算法的精髓Next数组为什么要这么做,后来用反证法简单的证明了一个困扰了一上午的问题。记录如下:最后一句话“部分匹配”的实质是,有时候,字符串头部和尾部会有重复。比如,”ABCDAB”之中有两个”AB”,那么它的”部分匹配值”就是2(”AB”的长度)。搜索词移动的时候,第一个”AB”向后

2017-03-20 16:31:40 503

原创 2017网易游戏·在线笔试编程题·第一题

题目描述: 目前有一款益智小游戏,对经典的吃豆子游戏进行了改编。玩家将在类似如下图中所示的网格地图中进行游戏,当玩家将所有的“豆子”吃完后,游戏便结束。具体的游戏规则如下: 1.玩家在游戏开始后,出生在地图的左上角,且面朝右侧。 2.玩家每次只能移动一格,移动的方式只能从如下两种方式中选择一种: a.按玩家当前的朝向水平移动一格(如果玩家目前面朝右侧,

2016-09-18 22:15:58 3143

原创 Leetcode - Move Zeroes

Given an array nums, write a function to move all 0’s to the end of it while maintaining the relative order of the non-zero elements.For example, given nums = [0, 1, 0, 3, 12], after calling your funct

2016-08-30 14:30:55 425

原创 leetcode- Preorder/Inorder/PostOrder without Recursive

Recursive solution is trivial方法一(麻烦):/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(

2016-08-30 14:14:53 394

原创 Leetcode-Symmetric Tree

Given a binary tree, check whether it is a mirror of itself (ie, symmetric around its center).For example, this binary tree [1,2,2,3,4,4,3] is symmetric: 1 / \ 2 2 / \ / \3 4 4 3But the

2016-08-26 11:07:25 330

原创 leetcode-MaxDepth of a binaryTree

Given a binary tree, find its maximum depth.The maximum depth is the number of nodes along the longest path from the root node down to the farthest leaf node.两种递归: int maxDepth(TreeNode* root) {

2016-08-26 11:04:43 443

原创 Leetcode-Binary Tree Level Order Traversal

Given a binary tree, return the level order traversal of its nodes’ values. (ie, from left to right, level by level).For example: Given binary tree [3,9,20,null,null,15,7], 3 / \ 9 20

2016-08-25 11:24:49 344

原创 Git常用命令

为了方便自己查询,将最近用到的Git命令整理如下: git init # 在本地建立一个仓库 git clone (repository) # git clone默认会把远程仓库整个给clone下来 git status git add modified_file #可以用Regular Expression匹配多个文件 git bra

2016-08-23 18:41:06 303

原创 JavaScript 三级联动的实现

最近项目用用到了“添加商品”,商品有所属商品、一级类目、二级类目等,从而构成了三个级别,为了提升用户体验,做了如下的三级联动准备工作: 一、获取后台数据,public class MenuJSON { public static void GetMenuJsonData(HttpServletRequest request) { User user = (User) requ

2016-01-15 11:33:57 812

原创 JavaWeb开发日期类型处理总结

mysql中日期类型datatime,可以理解为一种特殊的字符串,java在daoImpl中往db中插入时,需要先将java中的Date类型的转化为String类型 方法如下:String nowTime=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());

2016-01-15 10:54:27 1797

原创 Web前端开发之定义全局的上下文路径

1.在jsp文件头添加js对象<script type="text/javascript">var basePath='<%=request.getContextPath()%>';</script>2.引用js对象中定义的全局上下文路径变量 内部直接引用:alert(basePath);外部文件引用:// 头部添加外部js文件<script type="text/javascript"

2015-12-07 20:44:35 1756

原创 分页程序的实现

一、前端代码: 前端采用标签库,需要导入<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%><div class="pagging"> <div class="left">总记录数:${pagination.countSize} - 总页数:${pagination.countPage}</div>

2015-11-29 11:08:11 509

原创 Web后台开发之CRUD操作的两种实现

一、常见的CRUD操作方法public List<Commodity> getAllCommodity(Pagination pagination) { List<Commodity> commodities = new ArrayList<Commodity>(); Connection conn = null; PreparedStatement

2015-11-29 10:34:19 1679

原创 JS实现动态监听select标签,并修改属性

直接上Demo: 功能:通过监听select选项,当下拉框选择“下单时间”,则后面的输入框内要有时间格式的提示,即动态更新input标签的placeholder属性1.html代码如下:<select id="select_id" name="condition"> <option id="order_id" value="order_id">订单号</option> <optio

2015-11-25 22:06:49 54737

原创 web开发乱码问题总结

1.get、post请求乱码解决方案2.框架中处理中文乱码的解决方案:在过滤器中设置

2015-11-25 15:28:02 522

原创 多态机制原理解析--从内存角度分析

回头看多态,又有了新的认识。 理解多态主要搞清楚以下几个问题就可以了:(以父类Pet,子类Dog为例) 1.为什么可以用表达式 Pet p1= new Dog(); //为什么可以用父类的引用指向子类创建的对象? 2. 当用父类的引用p1,操作子类的对象的时候,为什么可以操作复写(override)的Method,怎么知道该Method是子类的而不是父类的? 3. 当用父类的引用p1操作子类

2015-11-10 14:59:10 3045 1

原创 Web开发(jsp+javaBean+servlet )之文件上传

最近在做一个公众号项目,设计到了文件上传等功能模块,特此记录,温故而知新。Demo: 上传图片 第0步:环境配置,添加jar包 commons-fileupload-1.3.jar第1步: 表单中添加 enctype=”multipart/form-data” <form name="updateForm" id="updateForm" action="<%= request.getCo

2015-11-05 10:39:00 1048

原创 JSP+JQuery Ajax+Servlet 实现轮询方式消息提示功能

Talk is cheap,Show me the codes ! –Linus准备工作: jsp文件中,合适的位置添加消息提示: <span id="tongzhi" style="display:none"> 您有<a href="#"><strong id="tongzhi-content">0</strong></a>条新消息</span>第一步:写JS文件,部分元素需要根据jsp的

2015-10-27 15:00:41 7189

原创 设计模式总结

所有的设计模式都在围绕着“高内聚,低耦合,提高复用,提高可维护性”三大类模式:创建型、结构型、行为型1.创建型:1.1工厂模式(Factory)将定义一个用于创建对象的接口,让子类决定实例化哪一个类。1.2抽象工厂模式(Abstract Factory)提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。1.3建造者模式(Builder)构建过程和表示过程分离,达到隐藏产品组装的过程

2015-09-30 15:26:47 343

原创 Android中ArrayAdapter、SimpleAdapter、BaseAdapter总结

因为经常忘记,总结一下之前学过的各种Adapter。1. ArrayAdapter构造函数 public ArrayAdapter (Context context, int resource, T[] objects)Parameters context: 上下文. resource: 资源ID,该资源包含了一个TextView组件(The resource ID for a layo

2015-07-28 22:57:49 851

原创 OSChina客户端源码学习(3)--轮询机制的实现

主要以OSChina Android客户端源码中Notice的轮询机制进行解读。一、基础知识一般IM(即使通讯)的实现有两种方式:推送和轮询,推送就是服务器主动向客户端发送消息,用特定的协议比如XMPP、MQTT。另一种是轮询,实时性并不高,而且比较耗电。这种有分为两种情况:一段时间发起一次查询和死循环进行查询。 参考: http://jcodecraeer.com/a/anzhuokaifa/

2015-07-20 16:49:26 1220

原创 OSChina客户端源码学习(2)--缓存的设计

一、缓存的作用请求数据的时候,首先进行判断,是否可以从缓存中获取数据,如果满足条件,则直接从缓存中获取数据。否则请求新的数据。这样比没有缓存的情况下,每次都要从服务器请求数据要快,而且,没有网的情况下,也可以浏览已经缓存了的数据,极大的提高了用户的体验。二、源码解析源码中用到缓存的地方有:1 请求数据之前,先判断是否可以从缓存中获取,如果满足条件,则直接从缓存中读取,否则,向服务器请求新的数据。//

2015-07-15 17:43:19 836

原创 OSChina客户端源码学习(1)--Android与Server的交互

这里主要针对“综合”这个选项卡下的“资讯”模块为例子,对核心代码进行解读。准备工作:参考我的另外一篇博客 http://blog.csdn.net/csp277/article/details/46610893 然后点击下面的类 Class AsyncHttpResponseHandler第一步:定义AsyncHttpResponseHandler,该handler对象作为get请求的参数,用

2015-07-13 19:47:07 834

原创 ButterKnife学习

ButterKnife是为了将代码变得更加简洁,提高可读性的一种标签注入的框架。配置方法可参考如下链接: http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2015/0102/2247.html使用方法如下:情况1 @InjectView. 绑定xml中的view到一个自定义的View变量中package com.example.bu

2015-07-07 11:53:34 578

原创 Struts2学习--配置及原理简述

一、配置如图所示,开发前先配好工作环境。 1. 将Structs压缩包(自行下载后)解压缩,将目录 struts-2.3.20\apps\struts2-blank\WEB-INF\lib 下的jar包全部导入到项目的WEB-INF的lib目录下。2 WEB-INF下建立web.xml<?xml version="1.0" encoding="UTF-8"?><web-app id="WebAp

2015-06-30 20:18:53 692

原创 解决JEB打开一闪而退

已经遇到这个问题两次了,每次都花了些时间解决。在这里总结一下。 JEB压缩包打开后运行jeb_wincon.bat,显然这是windows的bat批处理文件。用编辑器打开可以看到如下代码: 其中pause和echo %base%、echo %JAVA%命令是我自己添加的,为了更加方便的看到运行过程和效果。这是自己总结的一个动态调试的一个方法@echo offrem Start-up script

2015-06-28 17:29:20 18932 2

原创 在Windows7环境下安装Kali双系统方法总结

说明:我的方法是通过刻录软件,将Kali系统刻录到U盘中,然后开机通过U盘启动,实现kali系统的安装。下载刻录软件Win32Diskimager软件。 之前我用的是UltraIso , 后来报错: Failed to load ldlinux.c32 Boot failed: please change disks and press a key to continue. 解决办法:

2015-06-28 13:56:19 6494 1

原创 Android客户端与服务器端交互方式总结

一、HttpClient 方式://第一步:创建一个客户端实例HttpClient httpClient = new DefaultHttpClient(); //第二步:创建Http请求HttpPost httpRequest = new HttpPost(url); //第三步: Entity作为Http的request报文的一部分进行传输 httpRequest.setEntit

2015-06-23 22:08:02 1946

原创 Java集合体系总结—Map、Set、List、Queue

首先上来一张自己画的图,主要根据《疯狂Java讲义》一书中的两个图整合而来。主要讲解重要的集合及其特点。 0x01 Collection 接口 Collection接口比较宽泛,该集合就是单一对象的集合(对比Map容器,是key-value这样的一对元素构成的键值对的集合)。一般作为工具使用,比如在“向上转型”中,定义一个Collection对象接受任何实现类, 该接口提供了很多有用的API,比

2015-06-11 22:09:31 4238 3

原创 apk文件结构解析一

Apk文件用WINRAR压缩软件解压缩后,如下图所示:主要是三个文件(lib、META-INF、res)和三个文件夹(AndroidManifest.xml、classes.dex、resources.arsc) 用工具展开可以看到如下所示的文件结构(文件夹中的内容可能不一致,这里我举得例子是一个JNI的Demo) 下面再详细介绍各个文件或者文件夹的作用或内容META-INF文件夹

2015-06-05 17:25:40 2841 1

原创 正则表达式—不含某特定字符串

1.正则表达式中有(?=string)和(?!string)来表示我们是否需要匹配某个东西。 例一 取出不含有word的部分 例二 取出含有word的例三 以abcd打头,以1234结尾,且中间不能有abcd和1234 注意:区别于[^string],该表达式表示的是:在匹配的字符串中,不含有字符集中的任意字符,该字符集是由string的各个字符构成。//*作者:守静居士 //*转载

2015-05-20 23:01:00 2225

原创 Java中I/O流总结

Java中只有两种类型的流:字节流和字符流 1.字符流,主要是指处理的时候是以字符为单位,一般是用来处理TXT文本文档的读写。特点:处理更方便。 2.字节流,除了字符流,其他的都是以字节流的形式出现。处理所有的二进制文件。特点:使用更广泛。另外,为了把流的概念彻底搞清楚,首先要了解以下几个

2015-05-19 10:23:57 595

原创 Android逆向之静态分析

Android逆向之静态分析 1.入口分析 androidManifest.xml(AM文件)中的权限、Receiver中的action、Service中的action,但凡遇到比较敏感的权限、动作,要优先关注相应的组件 例如:敏感权限<uses-permission android:name="android.permission.READ_SMS" /><uses-permission

2015-05-12 17:15:40 533

commons-dbutils-1.6.jar

commons-dbutils-1.6.jar

2015-11-29

Java设计模式(疯狂Java联盟版)

Java设计模式(疯狂Java联盟版),作者李刚。Java实现,适合已经学习过设计模式的人看,这只是个总结性的文档,不适合初学者。

2015-09-30

重构与模式

本书由Joshua Kerievsky科瑞夫斯盖著,杨光,刘基诚译。本书开创性地深入揭示了重构与模式这两种软件开发关键技术之间的联系,说明了通过重构实现模式改善既有的设计,往往优于在新的设计早期使用模式。本书不仅展示了一种应用模式和重构的创新方法,而且有助于读者结合实战深入理解重构和模式。书中讲述了27种重构方式。

2015-09-30

Java实现高级计算器

该计算器源代码用Java实现,界面简单,精致,实现了多功能输入,支持键盘输入,记录计算过程等,非常适合初学者。NetBeans环境下实现,如果你是Eclipse环境,直接新建项目,并拷贝SRC目录下的java文件即可。

2015-05-18

C++template

计算机经典书籍《C++template》 你一定不会后悔的!

2012-11-20

空空如也

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

TA关注的人

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