- 博客(22)
- 资源 (8)
- 收藏
- 关注
原创 一个有序数组中找出两个数,使得两个数的和等于X的C++实现源代码
第四题一个有序数组a={1,3,6,.....,89,...,90318..}和一个数X,从数组中找出两个数,使得两个数的和等于X,要使时间复杂度尽量的低。LZ的思路 第一个想法 二分查找,开始自己以为大概是O(NlogN),但是面试官说是O(N²),这个肯定不对;第二个想法 用bitset,数组有的位置为1,然后循环从第一个数用X减,减出来的值如果置为了1则,则输
2014-01-25 23:35:52 1636
转载 【整理】重叠IO模型的编程思路及C++源代码
编程步骤1、创建一个套接字,开始在指定的端口上监听连接请求。2、接收一个入站的连接请求。3、为接受的套接字创建新的WSAOVERLAPPED结构,并分配事件对象句柄。4、以WSAOVERLAPPED结构为参数,在套接字上投递WSARecv调用。5、将所有接受套接字的事件组建事件数组,并调用WSAWaitForMultipleEvents函数,等待与重叠调用关联在一起的事件受信。
2014-01-24 16:08:11 1075
原创 在2.5亿个整数中找出不重复的整数的C++实现源代码
6、在2.5亿个整数中找出不重复的整数,注,内存不足以容纳这2.5亿个整数。 方案1:采用2-Bitmap(每个数分配2bit,00表示不存在,01表示出现一次,10表示多次,11无意义)进行,共需内存内存,还可以接受。然后扫描这2.5亿个整数,查看Bitmap中相对应位,如果是00变01,01变10,10保持不变。所描完事后,查看bitmap,把对应位是01的整数输出即可。
2014-01-24 13:06:16 2768
原创 建立数据库本地索引的C++实现源代码
第二题:现在有100W条学生数据,格式如下:姓名---------------描述张三---------------爱好篮球李四---------------爱好足球王五---------------IT从业者,喜欢C++姓名字段不超过4个汉字,描述字段不超过50个汉字,请实现一个查系统,要求如下:1) 可以根据姓名快速查到描述信息2) 可以根据描述信息(这里假
2014-01-23 13:42:52 2536
转载 【学习】MFC 如何处理发送给线程的消息
与窗口消息不同,线程消息用ON_THREAD_MESSAGE来映射,发送消息用PostThreadMessage函数。详述如下:1. 声明一个派生自CWinThread的类,例如CMyThread类。在类的声明中(.h头文件)加入消息处理函数afx_msg void AFX_MSG_CALL OnReset(WPARAM wParam, LPARAM lParam); /
2014-01-22 16:00:30 1416
转载 【中英文】IOCP本质论
原文地址:http://support.microsoft.com/kb/192800翻译地址:http://www.libing.net.cn/post/Design-Issues-When-Using-IOCP-in-a-Winsock-Server.php欢迎转载,请保留翻译者。译者:胡章优 huzhangyouMSN: huzhangyou2002(at)gmail.c
2014-01-21 16:55:41 1598
转载 SendMessage与PostMessage的区别
1、首先是返回值意义的区别,我们先看一下 MSDN 里的声明:LRESULT SendMessage( HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam);BOOL PostMessage( HWND hWnd, UINT Msg,
2014-01-21 13:59:34 533
转载 "线程安全"是一个什么概念?
以前常听高手告诫MFC对象不要跨线程使用,因为MFC不是线程安全的。比如CWnd对象不要跨线程使用,可以用窗口句柄(HWND)代替。CSocket/CAsyncSocket对象不要跨线程使用,用SOCKET句柄代替.那么到底什么是线程安全呢?什么时候需要考虑?如果程序涉及到多线程的话,就应该考虑线程安全问题。比如说设计的接口,将来需要在多线程环境中使用,或者需要跨线程使用某个对象时,这个就必须考虑
2014-01-21 10:13:13 595
转载 在Win32下用C++实现多线程读写锁
读写锁实际是一种特殊的自旋锁,它把对共享资源的访问者划分成读者和写者,读者只对共享资源进行读访问,写者则需要对共享资源进行写操作。这种锁相对于自旋锁而言,能提高并发性,因为在多处理器系统中,它允许同时有多个读者来访问共享资源,最大可能的读者数为实际的逻辑CPU数。写者是排他性的,一个读写锁同时只能有一个写者或多个读者(与CPU数相关),但不能同时既有读者又有写者。 现在Win32的API
2014-01-18 15:31:38 807
转载 函数返回值为自定义的类型与引用类型的区别
#include#include#includeusingnamespace std;ofstream out("test.out");classA{ public: string id; A(string iid=""):id(iid){out"A(),iid=" A(constA& a)
2014-01-17 15:28:09 1231
转载 【IOCP学习】IOCP模型总结
IOCP(I/O Completion Port,I/O完成端口)是性能最好的一种I/O模型。它是应用程序使用线程池处理异步I/O请求的一种机制。在处理多个并发的异步I/O请求时,以往的模型都是在接收请求是创建一个线程来应答请求。这样就有很多的线程并行地运行在系统中。而这些线程都是可运行的,Windows内核花费大量的时间在进行线程的上下文切换,并没有多少时间花在线程运行上。再加上创建新线程的开销
2014-01-15 17:45:55 960
转载 c++ 内存泄漏(Detected memory leaks)解决
最近看到关于内存泄漏的查找的文章,供大家学习:Detected memory leaks!Dumping objects ->{98500} normal block at 0x05785AD0, 152 bytes long. Data: 3C AC 4E 10 00 00 00 00 BC A4 4E 10 78 B6 37 00 Object dump complete. 而且每次
2014-01-15 13:35:10 3764 1
转载 Windows Socket编程的基本思路
Windows下Socket编程主要包括以下几部分:服务端 1、初始化Windows Socket库。 2、创建Socket。 3、绑定Socket。 4、监听。 5、Accept。 6、接收、发送数据。客户端 1、初始化Windows Socket库。 2、创建Socket。 3、连接Socket。 4、
2014-01-15 11:06:40 618
转载 【重温】C++中String类的实现
#includeusing namespace std;class String{ friend ostream& operatorpublic: String(const char* str=NULL); //赋值构造兼默认构造函数(char) String(const String
2014-01-14 14:22:21 585
转载 运算符重载需要注意的事项
(1) 一般情况下,单目运算符最好重载为类的成员函数;双目运算符则最好重载为类的友元函数。(2) 以下一些双目运算符不能重载为类的友元函数:=、()、[]、->。(3) 类型转换函数只能定义为一个类的成员函数而不能定义为类的友元函数。(4) 若一个运算符的操作需要修改对象的状态,选择重载为成员函数较好。(5) 若运算符所需的操作数(尤其是第一个操作数)希望有隐式类型
2014-01-14 11:47:19 1526
转载 宏定义的一些使用技巧总结
我在写代码的时候喜欢使用宏,不仅使代码看起来整洁,而且用好了还能极大的减轻编码的工作量,但是如果使用不当的话,出了问题查找起来就就非常的难了,下面的总结大部分是从网上看到的,也有一些是我自己在工作中总结出来的。宏使用中的常见的基础问题1. 防止一个头文件被重复包含 #ifndef BODYDEF_H #define BODYDEF_H //头文件内容 #en
2014-01-08 17:37:53 665
转载 C++移位运算符
关于逻辑移位、算术移位可参见迅雷深大笔试题部分。的一道题。以前看到C++标准上说,移位运算符(>)出界时的行为并不确定:The behavior is undefined if the right operand is negative, orgreater than or equal to the length in bits of the promoted left opera
2014-01-07 16:27:49 613
转载 error LNK2001: 无法解析的外部符号 __imp__htonl@4(编程解决方法)
正在编译...1>Ipv4IPv6traceroutesrc.cpp1>d:\研究生\c++\study\test\test\ipv4ipv6traceroutesrc.cpp(461) : warning C4267: “参数”: 从“size_t”转换到“DWORD”,可能丢失数据1>d:\研究生\c++\study\test\test\ipv4ipv6traceroutesrc.
2014-01-03 16:03:31 19851 2
转载 使用MFC作为共享的DLL 与 使用MFC作为静态链接库的区别
VC工程-设置里的使用MFC作为共享的DLL ,使用MFC作为静态链接库 二者有何区别,各有什么好处??而且用MFC开发的程序里如果用到了其它的动态库,就要加载这些动态库,分为动态加载和静态加载,选用动态加载或者静态加载和前面那个选使用MFC作为共享的DLL和使用MFC作为静态链接库有什么关系吗??====================================动态连接库是在程
2014-01-03 10:07:14 1713
转载 Unicode下的CString与char *转换
在VS2005及以上的环境中,所见工程的默认字符集形式是Unicode,而VC6.0中,字符集形式为多字节字符集(MBCS: Multi-Byte Character Set),这样导致了许多字符转换的方法在Unicode的环境中不允许使用,强制类型转换的结果也会变得非常奇怪。如LPCTSTR与Char *的转换,在ANSI(VC6.0环境下默认编码)下,LPCTSTR == const
2014-01-02 15:31:51 857
转载 CStringT类和CString类的关系
CStringT 类用于操作可变长度的字符串的模板类。保留这些字符串的内存是通过字符串管理器对象来分配和释放的,这与 CStringT 的每个实例相关联。MFC 和 ATL 提供 CStringT 的默认实例,其名称分别为 CString、CStringA 和 CStringW,它们操作不同字符类型的字符串。这些字符类型分别是 TCHAR、char 和 wchar_t 类型。这些默认字符串类型使用
2014-01-02 13:39:18 2314
原创 VS2010控制台应用程序Unicode字符集下准确输出中文
// MyTestUnicode.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include //#include //#include "windows.h "#include using namespace std;int _tmain(int argc, _TCHAR* argv[]){CString str=_T("你好!");//C++默认的Loc
2014-01-02 13:13:54 1127
VS2019编译FFMPEG5.2
2023-05-11
田字格四块简单实现
2017-08-15
gtk+-bundle_2.16.6-20100207_win32.zip
2017-01-07
C++ zip压缩解压缩源代码
2016-11-22
mysql-connector-odbc-5.3.4驱动
2015-07-29
严蔚敏《数据结构》源代码(CPP文件)
2010-04-23
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人