<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[confide的路程]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/wanpower</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; wanpower]]></copyright><item><title><![CDATA[编程之美上的一些题目]]></title><link>https://blog.youkuaiyun.com/wanpower/article/details/7341904</link><guid>https://blog.youkuaiyun.com/wanpower/article/details/7341904</guid><author>wanpower</author><pubDate>Wed, 17 Oct 2012 20:31:49 +0800</pubDate><description><![CDATA[二进制中1的个数
 
解法：自己与比其小1的数按位与，即可得到1的个数

//计算一个数的二进制中1的个数
#include 
using namespace std;
//求1的个数
int solve(int x)
{
         int cnt = 0;
         while(x){
                   cnt++;]]></description><category></category></item><item><title><![CDATA[c++继承下的内存布局]]></title><link>https://blog.youkuaiyun.com/wanpower/article/details/7368500</link><guid>https://blog.youkuaiyun.com/wanpower/article/details/7368500</guid><author>wanpower</author><pubDate>Sun, 08 Apr 2012 10:34:42 +0800</pubDate><description><![CDATA[单一继承：
 
使用如下的例子：
 

class A 
{
public:
    virtual 
void f(){}
    virtual 
void h(){}
    int a;

};

class B:public A
{
public:
    virtual 
void f(){}
    virtual 
void g(){}]]></description><category></category></item><item><title><![CDATA[各种排序的实现]]></title><link>https://blog.youkuaiyun.com/wanpower/article/details/7360583</link><guid>https://blog.youkuaiyun.com/wanpower/article/details/7360583</guid><author>wanpower</author><pubDate>Fri, 16 Mar 2012 13:26:38 +0800</pubDate><description><![CDATA[#include  
using namespace std;

//堆排
//维护堆
void maxheapify(int *a, int cur, int low, int high)
{
    int large = 2 * low + 1;
    while(large < high)
    {
        if(large < high && a[larg]]></description><category></category></item><item><title><![CDATA[一些面试题]]></title><link>https://blog.youkuaiyun.com/wanpower/article/details/7338187</link><guid>https://blog.youkuaiyun.com/wanpower/article/details/7338187</guid><author>wanpower</author><pubDate>Fri, 09 Mar 2012 20:21:13 +0800</pubDate><description><![CDATA[一个数组是由一个递减数列左移若干位形成的，比如{4，3，2，1，6，5}是由{6，5，4，3，2，1}左移两位形成的，在这种数组中查找某一个数。

解法：二分查找，只需要将下标移位就可以了。

#include 
using namespace std;

int A[] = {4,3,2,1,6,5};
//左为正，右为负
int offset;
int n;
//偏移寻址
inline]]></description><category></category></item><item><title><![CDATA[i++,++i,i=i+1  分析]]></title><link>https://blog.youkuaiyun.com/wanpower/article/details/7338083</link><guid>https://blog.youkuaiyun.com/wanpower/article/details/7338083</guid><author>wanpower</author><pubDate>Fri, 09 Mar 2012 19:45:04 +0800</pubDate><description><![CDATA[首先三者都是等价的操作，三者的效率也都是等价的，这是vs2010的反汇编，三者都被转成相同的汇编代码：






01041375  mov         eax,dword ptr [i]  


01041378  add         eax,1  


0104137B  mov         dword ptr [i],eax]]></description><category></category></item><item><title><![CDATA[求一个数组的最长递减子序列]]></title><link>https://blog.youkuaiyun.com/wanpower/article/details/7338069</link><guid>https://blog.youkuaiyun.com/wanpower/article/details/7338069</guid><author>wanpower</author><pubDate>Fri, 09 Mar 2012 19:33:51 +0800</pubDate><description><![CDATA[比如{9，4，3，2，5，4，3，2}的最长递减子序列为{9，5，4，3，2}
解法：动态规划，时间复杂度O(n^2)
状态方程，设r[i]表示以i结束的最长子序列的元素个数，则
r[i] = max{ s[j] , r[j] + 1} , 条件是a[i] 
 
#include 
using namespace std;

int a[]={9,4,3,2,5,4};
//re]]></description><category></category></item><item><title><![CDATA[链表的基本操作]]></title><link>https://blog.youkuaiyun.com/wanpower/article/details/7338007</link><guid>https://blog.youkuaiyun.com/wanpower/article/details/7338007</guid><author>wanpower</author><pubDate>Fri, 09 Mar 2012 19:07:45 +0800</pubDate><description><![CDATA[链表排序
    二路归并（暂未实现）
    基本思想：维护一个队列，从头便利链表，找到一段按降序排列的链表段，一段一段的分开，然后将它们按顺序入队，每次从对头取出两个进行归并，归并后的结果入队。


#include 
using namespace std;
struct node{
	int d;
	node *next;
	node(int x){d = x;next]]></description><category></category></item></channel></rss>