<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[dickyjyang的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/dickyjyang</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; dickyjyang]]></copyright><item><title><![CDATA[如何在共享内存上创建C++对象]]></title><link>https://blog.youkuaiyun.com/dickyjyang/article/details/21403451</link><guid>https://blog.youkuaiyun.com/dickyjyang/article/details/21403451</guid><author>dickyjyang</author><pubDate>Mon, 17 Mar 2014 19:10:09 +0800</pubDate><description><![CDATA[游戏中通常会使用共享内存来存放一些数据，这样当程序二进制更新（只涉及代码逻辑变更，不涉及数据结构变更），程序core，异常停止等情况发生时，存放在共享内存中的数据并不会丢失。通过这种方式可以大大减少游戏逻辑与数据库的交互，通常也会简化编程逻辑，因为数据从共享内存中就可以得到。
　　比如玩家对象可以放入共享内存。玩家对象和游戏中怪物等有一些共同特点，比如移动，血量等等。在C++中，通常会抽象一个基]]></description><category></category></item><item><title><![CDATA[跳表Skiplist学习笔记]]></title><link>https://blog.youkuaiyun.com/dickyjyang/article/details/8835338</link><guid>https://blog.youkuaiyun.com/dickyjyang/article/details/8835338</guid><author>dickyjyang</author><pubDate>Mon, 22 Apr 2013 16:54:42 +0800</pubDate><description><![CDATA[链表由于数据在内存中的存储是不连续的，因此无法进行随机查找。数组可以提供随机查找，但是往往需要预先定义数组的大小。数组的动态扩张比较麻烦，特别是对于存放在共享内存中的数组。
    跳表是一个特殊的有序链表，插入数据的时候，可以方便的分配一个节点，然后将其插入到链表中。它可以提供期望为log(n)的查找效率，插入和删除的时间复杂度期望也是log(n)。
跳表特点：
1、跳表是一个有序链表]]></description><category></category></item><item><title><![CDATA[hash算法学习笔记]]></title><link>https://blog.youkuaiyun.com/dickyjyang/article/details/8789001</link><guid>https://blog.youkuaiyun.com/dickyjyang/article/details/8789001</guid><author>dickyjyang</author><pubDate>Thu, 11 Apr 2013 16:31:49 +0800</pubDate><description><![CDATA[hash表作为一种快速查找的数据结构，在希望提高程序性能的场所使用非常广泛，理论上希望它提供的查找复杂度是O(1)。但是如果遇到hash冲突的情况，那么hash表的查找就会慢下来。解决hash冲突的方式包括开放定址、共享池、链表等。显然hash表的性能依赖于hash表中key的hash算法的好坏，一个好的hash算法应该尽可能使得hash(key)各不相同，从而使得hash表的查找性能维持在O(1]]></description><category></category></item><item><title><![CDATA[python学习笔记之python中处理中文]]></title><link>https://blog.youkuaiyun.com/dickyjyang/article/details/8759037</link><guid>https://blog.youkuaiyun.com/dickyjyang/article/details/8759037</guid><author>dickyjyang</author><pubDate>Thu, 04 Apr 2013 15:34:36 +0800</pubDate><description><![CDATA[一、只有中文注释
在python文件的头部加上：#coding=gbk 或者 #coding=utf-8
使用 #coding:gbk 或 #coding:utf-8也是一样的。
二、创建包含中文的字符串
str = u”python中文字符串”，前面的u代表这是一个unicode字符串，一般英文字符采用ACSII编码。
三、打印输出中文字符
方法一、
str = u’中文字符串’]]></description><category></category></item><item><title><![CDATA[二维数组螺旋遍历]]></title><link>https://blog.youkuaiyun.com/dickyjyang/article/details/8660368</link><guid>https://blog.youkuaiyun.com/dickyjyang/article/details/8660368</guid><author>dickyjyang</author><pubDate>Mon, 11 Mar 2013 18:12:45 +0800</pubDate><description><![CDATA[二维数组螺旋遍历如下图所示，以A点为中心点，由近及远的遍历A周围的格子。比如要找A点周围某个范围内的数据，并且是按距离从近到远找出一定量数据，就是可以使用数组螺旋遍历的方法，找出A点附近满足要求的数据。

下面是二维数组螺旋遍历的算法：
1、文件ArraySearchGenerator.h
/* 以某个点为中心螺旋遍历二维数组，相对应平面就是从近到远搜索
 */
class CArrayS]]></description><category></category></item><item><title><![CDATA[学习笔记之linux shell遍历目录中的文件]]></title><link>https://blog.youkuaiyun.com/dickyjyang/article/details/8614606</link><guid>https://blog.youkuaiyun.com/dickyjyang/article/details/8614606</guid><author>dickyjyang</author><pubDate>Tue, 26 Feb 2013 17:03:06 +0800</pubDate><description><![CDATA[#/bin/sh
# 列出一个目录下的所有普通文件

# 参数1表示文件目录，参数2表示是否递归，0代表不递归，1表示递归，默认递归模式
function listAllFiles() {
    _FILE_DIR=$1 #文件目录
    _RECURSIVE_MODE=$2  #1表示递归，0表示不递归


    #传入的目录不能为空
    if [ -z "$_FI]]></description><category></category></item></channel></rss>