作用域

 

int x=5;
int main()
{
int x=x;
return x;
}

结果:debug error

posted @ 2011-10-24 19:27 メmarsメ 阅读(143) | 评论 (0)编辑 收藏

有2.5亿个整数存放在一个文件中,(已知内存容量没有此文件大)如何判断出这个文件中有多少个不相同的数。

总结出一个规律,腾讯的面试题跟 数据分析处理 的相关的,基本上都会用到hash算法
把整个空间映射到内存,一个整数一个bit,总共需要2^32 / 2^3 = 512M内存。

posted @ 2011-10-20 14:35 メmarsメ 阅读(369) | 评论 (0)编辑 收藏

multimap容器不能用greater_equal

template<class _Pr, class _Ty1, class _Ty2> inline
    
bool __CLRCALL_OR_CDECL _Debug_lt_pred(_Pr _Pred, const _Ty1& _Left, const _Ty2& _Right,
    
const wchar_t *_Where, unsigned int _Line)
// test if _Pred(_Left, _Right) and _Pred is strict weak ordering
    if (!_Pred(_Left, _Right))
        
return (false);
    
else if (_Pred(_Right, _Left))
        _DEBUG_ERROR2(
"invalid operator<", _Where, _Line);
    
return (true);}


因此,相等的时候就不行

posted @ 2011-10-19 22:57 メmarsメ 阅读(324) | 评论 (0)编辑 收藏

#ifdef DEBUG

在调试程序时,常常希望输出一些所需的信息,而在调试完成后不再输出这些信息。可以在源程序中插入以下的条件编译段:

    #ifdef DEBUG

    print ("device_open(%p)\n", file);

    #endif

    

    如果在它的前面有以下命令行:

    #define DEBUG

    

    则在程序运行时输出file指针的值,以便调试分析。调试完成后只需将这个define命令行删除即可。有人可能觉得不用条件编译也可达此目的,即在调试时加一批printf语句,调试后一一将printf语句删除去。的确,这是可以的。但是,当调试时加的printf语句比较多时,修改的工作量是很大的。用条件编译,则不必一一删改printf语句,只需删除前面的一条“#define DEBUG”命令即可,这时所有的用DEBUG作标识符的条件编译段都使其中的printf语句不起作用,即起统一控制的作用,如同一个“开关”一样。

posted @ 2011-10-13 19:02 メmarsメ 阅读(595) | 评论 (0)编辑 收藏

无法解析的外部符号 __imp__ExtractIconW@12


1>dxut.obj : error LNK2019: 无法解析的外部符号 __imp__ExtractIconW@12,该符号在函数 "long __cdecl DXUTCreateWindow(wchar_t const *,struct HINSTANCE__ *,struct HICON__ *,struct HMENU__ *,int,int)" (?DXUTCreateWindow@@YAJPB_WPAUHINSTANCE__@@PAUHICON__@@PAUHMENU__@@HH@Z) 中被引用


solution:
add shell32.lib

posted @ 2011-10-13 18:40 メmarsメ 阅读(544) | 评论 (0)编辑 收藏

无法打开文件"dxerr9.lib"

问题描述:使用Visual Studio 2010,DX10 SDK打开旧版本(DX9)的项目,编译运行时候提示为
fatal error LNK1104: 无法打开文件“dxerr9.lib”
================================================
问题原因:DX10中将dxerr9.lib变成了dxerr.lib(显然DX8中这个文件叫dxerr8.lib)
解决方法:
在属性管理器中,右击解决方案->属性->连接器->输入->附加依赖项,在里面找到dxerr9.lib,改成dxerr.lib
问题解决。

posted @ 2011-10-13 18:20 メmarsメ 阅读(1617) | 评论 (0)编辑 收藏

D3DXVec3TransformCoord [projecting the result back into w=1]

w是其次坐标,用于表示verctor代表一个点还是一个向量。
w=1代表vector是个点,w=0代表vector是个向量,平移向量后,向量是没有变化的。
也就是w决定了一个变换中,平移部分是否有效。

w=0就是只让属于线性变换的变换有效。

posted @ 2011-10-10 20:57 メmarsメ 阅读(165) | 评论 (0)编辑 收藏

骆驼吃香蕉问题

总共有3000只香蕉,有一只骆驼每一次只能带1000只香蕉,
每1公里吃1只香蕉,没有香蕉吃它是不肯走的,A-B 点距离1000公里,
如果这个骆驼要从A点到B点有什么办法可以让更多的香蕉剩下来?
如何做到?如何最有效率的运最多的香蕉到B点?

主要解决思路:
①骆驼先载上1000个香蕉 走到某一处,然后放一些香蕉在路上某处。
再带上一些香蕉 边走边吃返回到起点
②重复上述过程,直到还剩余香蕉全部都搬运到路上某处.
③最后重复①②过程

现在的问题就出现了 走到某处? 到底走到哪里呢?
一开始,有3000个香蕉 那么在通往终点的方向上的同一段路 要走3次
该段路程反方向要走2次
如果只剩了2000个香蕉 那么在通往终点的方向上的同一段路 要走2次
该段路程反方向要走1次

很显然 可以用剩余香蕉的数量来分隔。

从3000个香蕉到刚好剩余2000个香蕉
消耗了1000个香蕉(骆驼行走路程为1000m)
在同一段路要走3+2=5 次
那么这段路只有 1000/5=200m 此时走过200m 剩余1000个香蕉

从2000个香蕉到1000个
又消耗了1000个香蕉(骆驼行走路程为1000m)
根据上述推论 在在同一段路要走1+2=3 次
那么又走过1000/3=333.3m

因为香蕉的浪费全部都是浪费在往返的路程中,所以只要往返的路程最短就能运送最多的香蕉。

posted @ 2011-10-08 14:52 メmarsメ 阅读(640) | 评论 (0)编辑 收藏

无法解析的外部符号 RegQueryValueEx、RegCloseKey、RegOpenKeyEx、RegSetValueEx...

1>------ 已启动生成: 项目: WinTest, 配置: Debug Win32 ------
1>生成启动时间为 2011/10/5 12:35:59。
1>InitializeBuildStatus:
1>  正在对“Debug\WinTest.unsuccessfulbuild”执行 Touch 任务。
1>ClCompile:
1>  所有输出均为最新。
1>ResourceCompile:
1>  所有输出均为最新。
1>ManifestResourceCompile:
1>  所有输出均为最新。
1>d3dUtility.obj : error LNK2005: "long __stdcall d3d::WndProc(struct HWND__ *,unsigned int,unsigned int,long)" (?WndProc@d3d@@YGJPAUHWND__@@IIJ@Z) 已经在 cfont.obj 中定义
1>cfont.obj : error LNK2019: 无法解析的外部符号 "bool __cdecl d3d::InitD3D(struct HINSTANCE__ *,int,int,bool,enum _D3DDEVTYPE,struct IDirect3DDevice9 * *)" (?InitD3D@d3d@@YA_NPAUHINSTANCE__@@HH_NW4_D3DDEVTYPE@@PAPAUIDirect3DDevice9@@@Z),该符号在函数 _WinMain@16 中被引用
1>dxutil.obj : error LNK2019: 无法解析的外部符号 __imp__RegCloseKey@4,该符号在函数 "long __cdecl DXUtil_GetDXSDKMediaPathCch(wchar_t *,int)" (?DXUtil_GetDXSDKMediaPathCch@@YAJPA_WH@Z) 中被引用
1>dxutil.obj : error LNK2019: 无法解析的外部符号 __imp__RegQueryValueExW@24,该符号在函数 "long __cdecl DXUtil_GetDXSDKMediaPathCch(wchar_t *,int)" (?DXUtil_GetDXSDKMediaPathCch@@YAJPA_WH@Z) 中被引用
1>dxutil.obj : error LNK2019: 无法解析的外部符号 __imp__RegOpenKeyExW@20,该符号在函数 "long __cdecl DXUtil_GetDXSDKMediaPathCch(wchar_t *,int)" (?DXUtil_GetDXSDKMediaPathCch@@YAJPA_WH@Z) 中被引用
1>dxutil.obj : error LNK2019: 无法解析的外部符号 __imp__RegSetValueExW@24,该符号在函数 "long __cdecl DXUtil_WriteStringRegKey(struct HKEY__ *,wchar_t *,wchar_t *)" (?DXUtil_WriteStringRegKey@@YAJPAUHKEY__@@PA_W1@Z) 中被引用
1>E:\Visual Studio 2010\Projects\WinTest\Debug\WinTest.exe : fatal error LNK1120: 5 个无法解析的外部命令
1>
1>生成失败。
1>
1>已用时间 00:00:01.19
========== 生成: 成功 0 个,失败 1 个,最新 0 个,跳过 0 个 ==========


solution:未包含AdvAPI32.lib

1>d3dUtility.obj : error LNK2005: "long __stdcall d3d::WndProc(struct HWND__ *,unsigned int,unsigned int,long)" (?WndProc@d3d@@YGJPAUHWND__@@IIJ@Z) 已经在 cfont.obj 中定义
1>cfont.obj : error LNK2019: 无法解析的外部符号 "bool __cdecl d3d::InitD3D(struct HINSTANCE__ *,int,int,bool,enum _D3DDEVTYPE,struct IDirect3DDevice9 * *)" (?InitD3D@d3d@@YA_NPAUHINSTANCE__@@HH_NW4_D3DDEVTYPE@@PAPAUIDirect3DDevice9@@@Z),该符号在函数 _WinMain@16 中被引用
这两个错误有点莫名其妙:将问题函数声明重新敲一遍...不能复制的

posted @ 2011-10-05 13:21 メmarsメ 阅读(2560) | 评论 (0)编辑 收藏

Hongkong Bank

1. 若某链表最常用的操作是在最后一个结点之后插入一个结点和删除最后一个结点,则采用()存储方式最节省时间?
A、单链表                   B、带头结点的非循环双链表                       C、带头节点的双循环链表                D、循环链表

2. 如果需要对磁盘上的1000W条记录构建索引,你认为下面哪种数据结构来存储索引最合适?()
A、Hash Table                      B、AVL-Tree                      C、B-Tree                 D、List

解析:
AVL-Tree 检索速度是很快的,这是因为二分检索是树结构的一个本质特性。但是最大的缺点是他的存储利用率太低。每个树节点仅仅有一个数据项,有2个指针和每个数据项的控制信息。

Hash Table当溢出发生时可以分裂成2个节点。目录以2的指数倍增长,只要一个节点溢出而且目录已经达到了指定的最大目录深度,他就会加倍。一个问题就是任何一个节点都能引起目录分裂,因此如果Hash函数不是很随机的话,目录可能增长的很大。

List优点是存取方便,但不便于动态维护,进行插入删除等操作时需要移动大量的数据。

B-tree是比较合适用于磁盘的数据结构,由于他是一个宽而浅的树,查找一个数需要访问很少的节点。内存利用率是比较好的,所以他用于内存数据库比较合适;搜索速度比较快(用二分查找时,只访问很少一部分节点);而且更新速度也比较快(数据移动通常只涉及到一个节点)

6、IPV6地址包含了()位
A、16                               B、32                                C、64                              
D、128

posted @ 2011-10-03 04:21 メmarsメ 阅读(204) | 评论 (0)编辑 收藏

仅列出标题
共5页: 1 2 3 4 5 
<2024年4月>
31123456
78910111213
14151617181920
21222324252627
2829301234
567891011

导航

统计

常用链接

留言簿

随笔分类

随笔档案

文章分类

文章档案

搜索

最新评论

阅读排行榜

评论排行榜