<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[周大侠还不够厉害]]></title><description><![CDATA[好好学，慢慢学。]]></description><link>https://blog.youkuaiyun.com/a237828879</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; a237828879]]></copyright><item><title><![CDATA[poj3301三分法]]></title><link>https://blog.youkuaiyun.com/a237828879/article/details/48598329</link><guid>https://blog.youkuaiyun.com/a237828879/article/details/48598329</guid><author>a237828879</author><pubDate>Sun, 20 Sep 2015 17:28:17 +0800</pubDate><description><![CDATA[题目大意：二维的坐标系中给出一些随机的点，把这些点都包含在内的最小正方形。


先考虑简单的情况：如果正方形的长宽裕坐标轴平行的话，我们只要找出x值y值的最小值与最大值（即找出最左最右最上最下的四个点），正方形的边长即为x最大值与x最小值的差或y的最大值与y最小值的差，因为要包含所有的点，取两者中更大的一个值。


但是正方形的长宽并不一定与坐标轴平行，所以要考虑正方形旋转的情况。但是]]></description><category></category></item><item><title><![CDATA[Basic Calculator]]></title><link>https://blog.youkuaiyun.com/a237828879/article/details/46471837</link><guid>https://blog.youkuaiyun.com/a237828879/article/details/46471837</guid><author>a237828879</author><pubDate>Fri, 12 Jun 2015 15:05:50 +0800</pubDate><description><![CDATA[Implement a basic calculator to evaluate a simple expression string.
The expression string may contain open ( and closing parentheses 
), the plus + or minus sign -, non-negative integers and empty ]]></description><category></category></item><item><title><![CDATA[error LNK2011: precompiled object not linked in; image may not run]]></title><link>https://blog.youkuaiyun.com/a237828879/article/details/45460113</link><guid>https://blog.youkuaiyun.com/a237828879/article/details/45460113</guid><author>a237828879</author><pubDate>Sun, 03 May 2015 17:36:39 +0800</pubDate><description><![CDATA[今天第一次尝试写一个单元测试，用的vs2013自动生成的测试工程，在最后build的时候出现了这个错误。
看起来是在说我的被测试单元的obj不能在预编译的时候link。在网上找了一些解决办法，有的说是vs出错了，重新build一下就好（这个最扯的）；有的说是exe调用的库之间的依
赖关系不对，要调整包含顺序，但是我这里一个dll调用另一个obj，不存在这种问题啊。
后来在msdn查到了关于这]]></description><category></category></item><item><title><![CDATA[c++ 实现word ladder]]></title><link>https://blog.youkuaiyun.com/a237828879/article/details/45422367</link><guid>https://blog.youkuaiyun.com/a237828879/article/details/45422367</guid><author>a237828879</author><pubDate>Fri, 01 May 2015 21:39:21 +0800</pubDate><description><![CDATA[﻿﻿
leetcode的原题：
Given two words (beginWord and endWord), and a dictionary, find the length of shortest transformation sequence from
beginWord to endWord, such that: 

Only one letter can be chang]]></description><category></category></item><item><title><![CDATA[Valid Palindrome]]></title><link>https://blog.youkuaiyun.com/a237828879/article/details/45152477</link><guid>https://blog.youkuaiyun.com/a237828879/article/details/45152477</guid><author>a237828879</author><pubDate>Mon, 20 Apr 2015 16:55:21 +0800</pubDate><description><![CDATA[﻿﻿Given a string, determine if it is a palindrome, considering only alphanumeric characters and ignoring cases.
For example,
"A man, a plan, a canal: Panama" is a palindrome.
"race a car" is not a ]]></description><category></category></item><item><title><![CDATA[Validate Binary Search Tree（二叉树前序、中序遍历）]]></title><link>https://blog.youkuaiyun.com/a237828879/article/details/45048007</link><guid>https://blog.youkuaiyun.com/a237828879/article/details/45048007</guid><author>a237828879</author><pubDate>Tue, 14 Apr 2015 21:24:48 +0800</pubDate><description><![CDATA[Given a binary tree, determine if it is a valid binary search tree (BST).
Assume a BST is defined as follows: 

The left subtree of a node contains only nodes with keys less than the node's key.The]]></description><category></category></item><item><title><![CDATA[Set Matrix Zeroes]]></title><link>https://blog.youkuaiyun.com/a237828879/article/details/44904155</link><guid>https://blog.youkuaiyun.com/a237828879/article/details/44904155</guid><author>a237828879</author><pubDate>Mon, 06 Apr 2015 18:26:53 +0800</pubDate><description><![CDATA[Given a m x n matrix, if an element is 0, set its entire row and column to 0. Do it in place.



题目的意思就是在一个矩阵中找到所有为零的点，然后把该点所在行与列都置为零。但是要求in place，就是原地置换。我理解的意思就是空间复杂度要求o（1）。


很水的一道题，只要遍历整个矩阵记]]></description><category></category></item><item><title><![CDATA[CRITICAL_SECTION的运用（现在debug时出的汗，都他妈是当年亲手写下它时脑子里进的水！）]]></title><link>https://blog.youkuaiyun.com/a237828879/article/details/44886457</link><guid>https://blog.youkuaiyun.com/a237828879/article/details/44886457</guid><author>a237828879</author><pubDate>Sun, 05 Apr 2015 11:17:25 +0800</pubDate><description><![CDATA[被自己的愚蠢与鲁莽坑了无数次后，开始明白一个道理。不管多灵异的bug，都不会是复杂到让你无法理解的。至少大多数时候是这样的……


CRITICAL_SECTION是Windows下定义的一个结构体，作用就是字面意思，临界区。


这个临界区指的是在 EnterCriticalSection与LeaveCriticalSection中间的这一段代码为临界区。比如你有好几个线程都要使用几]]></description><category></category></item><item><title><![CDATA[vim打开多窗口、多文件之间的切换]]></title><link>https://blog.youkuaiyun.com/a237828879/article/details/44775367</link><guid>https://blog.youkuaiyun.com/a237828879/article/details/44775367</guid><author>a237828879</author><pubDate>Tue, 31 Mar 2015 10:40:01 +0800</pubDate><description><![CDATA[﻿﻿
打开多个文件：
一、vim还没有启动的时候：
1.在终端里输入 
vim file1 file2 ... filen便可以打开所有想要打开的文件
2.vim已经启动
输入
:e file
可以再打开一个文件，并且此时vim里会显示出file文件的内容。

3.同时显示多个文件：
:sp         //水平切分窗口
:vsplit     //垂直切分窗口

]]></description><category></category></item><item><title><![CDATA[SSL和SSH有什么区别]]></title><link>https://blog.youkuaiyun.com/a237828879/article/details/44758997</link><guid>https://blog.youkuaiyun.com/a237828879/article/details/44758997</guid><author>a237828879</author><pubDate>Mon, 30 Mar 2015 22:22:17 +0800</pubDate><description><![CDATA[﻿﻿



ssl是通讯链路的附加层。可以包含很多协议。https, ftps, .....
ssh只是加密的shell，最初是用来替代telnet的。通过port forward，也可以让其他协议通过ssh的隧道而起到加密的效果。



SSL是一种国际标准的加密及身份认证通信协议，您用的浏览器就支持此协议。SSL（Secure Sockets Layer）最初是由美国Nets]]></description><category></category></item><item><title><![CDATA[Climbing Stairs爬楼梯啊爬楼梯（支持n step）]]></title><link>https://blog.youkuaiyun.com/a237828879/article/details/44751699</link><guid>https://blog.youkuaiyun.com/a237828879/article/details/44751699</guid><author>a237828879</author><pubDate>Mon, 30 Mar 2015 15:32:16 +0800</pubDate><description><![CDATA[leetcode原题


You are climbing a stair case. It takes n steps to reach to the top.
Each time you can either climb 1 or 2 steps. In how many distinct ways can you climb to the top?



就是有个n阶的楼梯，]]></description><category></category></item><item><title><![CDATA[Name Mangling in C++（g++生成链接库后函数名称的变化）]]></title><link>https://blog.youkuaiyun.com/a237828879/article/details/44685535</link><guid>https://blog.youkuaiyun.com/a237828879/article/details/44685535</guid><author>a237828879</author><pubDate>Fri, 27 Mar 2015 23:14:12 +0800</pubDate><description><![CDATA[﻿﻿
（今天学着使用g++生成和使用动态链接库，动态调用函数时一直报undefined symbol ，静态调用和直接使用静态库都没有问题。后来直接用nm查看了库中的函数名发现有了一些前缀和后缀，所以函数名称不对了所以不能获取到函数地址。然后在网上找到了下面这篇文章，才知道是为了对付c++的函数重载，用前缀代表了返回值，后缀代表了参数列表，文章讲的很不错很详细，很遗憾没找到原文作者……）

]]></description><category></category></item><item><title><![CDATA[多个进程间共享动态链接库的原理]]></title><link>https://blog.youkuaiyun.com/a237828879/article/details/44651565</link><guid>https://blog.youkuaiyun.com/a237828879/article/details/44651565</guid><author>a237828879</author><pubDate>Thu, 26 Mar 2015 16:20:47 +0800</pubDate><description><![CDATA[同样这个问题是我在面试总监的时候，总监问我的一个问题，这些天一直 忙活，都没有好好看书了，今天总结一下这个问题？为什么一个进程用完一个动态链接库以后另一个进程还可以继续使用呢？当时回答的很是笼统，只说对了答案的一半，现在就在这里好好总结一下吧！
前面我们已经说过进程间的通信有好几种方式，其实现在我们讲的这种动态链接库也是进程间的通信方式之一。
不管是windows还是Linux操作系统其实所有]]></description><category></category></item><item><title><![CDATA[Insert Interval 插入间隙]]></title><link>https://blog.youkuaiyun.com/a237828879/article/details/44595035</link><guid>https://blog.youkuaiyun.com/a237828879/article/details/44595035</guid><author>a237828879</author><pubDate>Tue, 24 Mar 2015 17:24:23 +0800</pubDate><description><![CDATA[先上题干，leetcode的原题：
Given a set of non-overlapping intervals, insert a new interval into the intervals (merge if necessary).
You may assume that the intervals were initially sorted according to their ]]></description><category></category></item><item><title><![CDATA[Merge Intervals 这个应该叫合并间隙？]]></title><link>https://blog.youkuaiyun.com/a237828879/article/details/44566439</link><guid>https://blog.youkuaiyun.com/a237828879/article/details/44566439</guid><author>a237828879</author><pubDate>Mon, 23 Mar 2015 17:20:58 +0800</pubDate><description><![CDATA[leetcode上的原题：
Given a collection of intervals, merge all overlapping intervals.
For example,
Given [1,3],[2,6],[8,10],[15,18],
return [1,6],[8,10],[15,18]. 
题意应该好理解，比如 1,3 与2,6都是被标记的范围，要求改为用1,6来表]]></description><category></category></item><item><title><![CDATA[Pow的实现]]></title><link>https://blog.youkuaiyun.com/a237828879/article/details/44402401</link><guid>https://blog.youkuaiyun.com/a237828879/article/details/44402401</guid><author>a237828879</author><pubDate>Wed, 18 Mar 2015 09:36:19 +0800</pubDate><description><![CDATA[就是实现一个简单的pow(double x, int n)，直接一个个的乘当然太过naive，使用二分查找使得时间复杂度为o(lgn)。
话不多说，先上代码：
int symbol = 1;
		double origx = x;
		if (n == 0 || x == 1.0)
			return symbol;
		if (n < 0)
			symbol *= -1;
		n = ab]]></description><category></category></item><item><title><![CDATA[strstr的实现与KMP]]></title><link>https://blog.youkuaiyun.com/a237828879/article/details/44344137</link><guid>https://blog.youkuaiyun.com/a237828879/article/details/44344137</guid><author>a237828879</author><pubDate>Tue, 17 Mar 2015 16:49:15 +0800</pubDate><description><![CDATA[原题
Implement strStr(). 
Returns the index of the first occurrence of needle in haystack, or -1 if needle is not part of haystack.

Update (2014-11-02):
The signature of the function had been upda]]></description><category></category></item><item><title><![CDATA[将一个32位的整数拆成4个char]]></title><link>https://blog.youkuaiyun.com/a237828879/article/details/44239357</link><guid>https://blog.youkuaiyun.com/a237828879/article/details/44239357</guid><author>a237828879</author><pubDate>Fri, 13 Mar 2015 11:55:22 +0800</pubDate><description><![CDATA[今天做了个跟电机通信的小程序，要用到一个32位的整数表示电机的速度或者位置信息。
传输的数据用的是字符串，开始想的是用取余数的办法，但因为有负数涉及到补码什么很容易搞错的东西，干脆直接把32位的整数直接拆成4个char，简单粗暴肯定不会错。
原理很简单，一个char8位，只要想办法把int的4个8位分别拿出来的就可以了。
我直接想到了移位
int a = -64;
char b = a>>]]></description><category></category></item><item><title><![CDATA[双缓冲绘图--mfc实时绘制相机灰度图]]></title><link>https://blog.youkuaiyun.com/a237828879/article/details/44205777</link><guid>https://blog.youkuaiyun.com/a237828879/article/details/44205777</guid><author>a237828879</author><pubDate>Wed, 11 Mar 2015 21:43:46 +0800</pubDate><description><![CDATA[老板的项目，要从相机中读取图像，并实时显示。
实时显示最大的问题应该就是图像闪烁了。我第一次做时直接用cdc一个点一个点的填，刷出来的图闪的厉害。图像闪烁的原因很简单，因为每次窗体刷新都要擦去原来的图像，然后进行重绘，重绘的频繁就看到了闪烁。还有我一次绘制的点数太多，那个图慢吞吞的刷出来就已经不能满足需求了。
双缓冲技术可以很好的解决上述问题，原理很简单。既然一个点一个点的往屏幕上贴太慢了，我]]></description><category></category></item><item><title><![CDATA[3Sum  好邪恶的题目啊。。嘿嘿]]></title><link>https://blog.youkuaiyun.com/a237828879/article/details/44204709</link><guid>https://blog.youkuaiyun.com/a237828879/article/details/44204709</guid><author>a237828879</author><pubDate>Wed, 11 Mar 2015 20:59:52 +0800</pubDate><description><![CDATA[今天把刷了leecode上的TwoSum，感觉太水了干脆把threeSum也做了。


Given an array S of n integers, are there elements a,
b, c in S such that a + b + c = 0? Find all unique triplets in the array which gives the sum of ze]]></description><category></category></item></channel></rss>