- 博客(13)
- 资源 (1)
- 收藏
- 关注
原创 微软笔试面试题目
智力题 1.烧一根不均匀的绳子,从头烧到尾总共需要1个小时,问如何用烧绳子的方法来确定半小时的时间呢? 2.10个海盗抢到了100颗宝石,每一颗都一样大小且价值连城。他们决定这么分: (1)抽签决定自己的号码(1~10); (2)首先,由1号提出分配方案,然后大家表决,当且仅当超过半数的人同意时,按照他的方案进行分配,否则将 被扔进大海喂鲨鱼; (3)如果1号死后,再由2号提出分配方案,然后剩下的
2008-06-20 13:47:00 394
原创 转载 sizeof怎样用法
sizeof,一个其貌不扬的家伙,引无数菜鸟竟折腰,小虾我当初也没少犯迷糊,秉着“ 辛苦我一个,幸福千万人”的伟大思想,我决定将其尽可能详细的总结一下。 但当我总结的时候才发现,这个问题既可以简单,又可以复杂,所以本文有的地方并不 适合初学者,甚至都没有必要大作文章。但如果你想“知其然,更知其所以然”的话, 那么这篇文章对你或许有所帮助。 菜鸟我对C++的掌握尚未深入,其中不乏错误,欢迎各位指正啊
2008-04-18 17:39:00 398
原创 最长公共字串
LCS问题就是求两个字符串最长公共子串的问题。解法就是用一个矩阵来记录两个字符串中所有位置的两个字符之间的匹配情况,若是匹配则为1,否则为0。然后求出对角线最长的1序列,其对应的位置就是最长匹配子串的位置.下面是字符串21232523311324和字符串312123223445的匹配矩阵,前者为X方向的,后者为Y方向的。不难找到,红色部分是最长的匹配子串。通过查找位置我们得到最长的匹配子
2008-04-12 16:28:00 1262 1
原创 最长公共子序列
一、算法思想 一个给定序列的子序列是在该序列中删去若干元素后得到的序列。给定两个序列X和Y,当另一序列Z既是X的子序列又是Y的子序列时,称Z是序列X和Y的公共子序列。最长公共子序列就是求给定两个序列的一个最长公共子序列。动态规划可以有效的解决此问题。由最长公共子序列问题的子序列的最优子结构性质,可以建立子问题最优的递归关系。用c[i][j]记录序列Xi和Yi的最长公共子序列的长度,递归
2008-04-12 14:55:00 774
原创 转 STL-迭代器
一. 种类: 标准STL序列容器:vector、string、deque和list。 标准STL关联容器:set、multiset、map和multimap。 非标准序列容器slist和rope。slist是一个单向链表,rope本质上是一个重型字符串 非标准关联容器hash_set、hash_multiset、hash_map和hash_mult
2008-04-12 09:52:00 1121
原创 KMP算法(求模式串的next及nextval值)
/* 伪C描述,运用了C++中引用,便与实现相关操作,算法主要思想(见严蔚敏数据结构83)*/void Get_Next(SString &T,int next[]){ /* 求模式串T的next函数值并存入数组next */ i=1; next[i]=0; j=0;
2008-04-08 19:44:00 8255 1
原创 一个比较通俗的KMP算法讲解(转)
最近在学字符串匹配的时候接触了这个算法,算法书上都是我讨厌的下标,转来转去,头晕啊。只好上网搜一下,大部分跟书上一样,好不容易找到一篇,总算看得有些懂了。 其实最简单的字符串匹配,就是逐个逐个比较,但是这样的效率很低,而KMP算法利用了......(不说了,表达能力差啊,^_^,看看牛人怎么解释的吧)。 我们这里说的KMP不是拿来放电影的(虽然我很喜欢这个软件),而是一种算法
2008-04-07 12:55:00 736 1
转载 [转载]IOCP模型的总结
原文:IOCP模型的总结IOCP(I/O Completion Port,I/O完成端口)是性能最好的一种I/O模型。它是应用程序使用线程池处理异步I/O请求的一种机制。在处理多个并发的异步I/O请求时,以往的模型都是在接收请求是创建一个线程来应答请求。这样就有很多的线程并行地运行在系统中。而这些线程都是可运行的,Windows内核花费大量的时间在进行线程的上下文切换,并没有多少时间花在线程运行
2008-03-30 10:15:00 421
转载 [转载]IOCP模型的总结
原文:IOCP模型的总结IOCP(I/O Completion Port,I/O完成端口)是性能最好的一种I/O模型。它是应用程序使用线程池处理异步I/O请求的一种机制。在处理多个并发的异步I/O请求时,以往的模型都是在接收请求是创建一个线程来应答请求。这样就有很多的线程并行地运行在系统中。而这些线程都是可运行的,Windows内核花费大量的时间在进行线程的上下文切换,并没有多少时间花在线程运行
2008-03-30 10:15:00 329
原创 编写IOCP时的几个注意事项
TIP 1: Use Winsock2 IOCP-capable functions, such as WSASend and WSARecv, over Win32 file I/O functions, such as WriteFile and ReadFile. 提示1:尽量使用WSASend和WSARecv进行数据收发Socket handles from Microsoft-base
2008-03-29 15:09:00 512
原创 IOCP学习
memcachedb是一个由新浪网的开发人员开放出来的开源项目,给memcached分布式缓存服务器添加了Berkeley DB的持久化存储机制和异步主辅复制机制,让memcached具备了事务恢复能力、持久化能力和分布式复制能力,非常适合于需要超高性能读写速度,但是不需要严格事务约束,能够被持久化保存的应用场景,例如memcachedb被应用在新浪博客上面。 memcachedb给memcach
2008-03-29 10:03:00 504
转载 c++ volatile用法(转)
一个定义为volatile的变量是说这变量可能会被意想不到地改变,这样,编译器就不会去假设这个变量的值了。精确地说就是,优化器在用到这个变量时必须每次都小心地重新读取这个变量的值(From Memory),而不是使用保存在寄存器里的备份。下面是volatile变量的几个例子:1) 并行设备的硬件寄存器(如:状态寄存器)2) 一个中断服务子程序中会访问到的非自动变量(Non-automatic va
2008-03-26 10:12:00 298
原创 STL容器特征
STL中顺序容器类和关联容器类的主要特征如下:(1) vector内部数据结构:数组。随机访问每个元素,所需要的时间为常量。在末尾增加或删除元素所需时间与元素数目无关,在中间或开头增加或删除元素所需时间随元素数目呈线性变化。可动态增加或减少元素,内存管理自动完成,但程序员可以使用reserve()成员函数来管理内存。vector的迭代器在内存重新分配时将失效(它所指向的元素在该操作的前后不再相同)
2008-03-26 10:10:00 674
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人