C/C++
文章平均质量分 61
congduanxd
每天进步一点点
展开
-
(2014微软实习生笔试题)2.K-th string
题目: 思路:就是从头开始数二进制数,到第K个满足条件(n个0,m个1,相加值为m)就打印并结束 效果 代码如下:#include#include#include#includechar* dec2bin(int n,int k){ int i=0; char* str = (char*)malloc(k*sizeof(char)); for(i=0;原创 2014-04-18 11:21:06 · 1642 阅读 · 0 评论 -
(2012年百度面试题)复杂链表(双指针)的拷贝
题目:有一个复杂链表,其结点除了有一个m_pNext指针指向下一个结点外,还有一个m_pSibling指向链表中的任一结点或者NULL。其结点的C++定义如下: struct ComplexNode { int m_nValue; ComplexNode* m_pNext; ComplexNode* m_pSibling; };下图是一个含有原创 2012-05-22 17:22:45 · 3788 阅读 · 1 评论 -
不用+-×÷求两个整数的之和
分析:这个问题最容易想到的是利用位运算实现。类似数字电路中的全加器的原理。2bit全加器的原理如下:输出S=A异或B进位C=A与B真值表如下:ABSC0000011011原创 2012-05-22 17:06:50 · 1611 阅读 · 0 评论 -
(待写)二分图最大匹配算法
背景:Xidian OJ 1078Description 2012来临之际,世界正在遭受着各种灾难。深远领主 丁丁二世也在这时候显露了他邪恶的本性。 丁丁拥有制造地震和海啸的能力。这一次,丁丁决定用最多的“超级组合”来破坏ACM实验室的稳定与和平。丁丁能制造 n 个地震, m 个海啸。每个地震对于海啸都有着特殊的喜好,只有地震 和其 喜好的海啸联手,才能成原创 2012-06-06 14:32:52 · 1454 阅读 · 0 评论 -
百度之星资格赛——J题
J:百度的新大厦时间限制: 1000ms 内存限制: 65536kB描述继百度搜索框大厦之后,百度又于2012年初在深圳奠基了新的百度国际大厦,作为未来百度国际化的桥头堡。不同于百度在北京的搜索框大厦,新的百度国际大厦是一栋高楼,有非常多的楼层,让每个楼中的电梯都能到达所有楼层将是一个极为不明智的设计。因此,设计师给出了一个特别的设计——一共大厦有m个电梯,每个电梯只有两个按钮,(针对原创 2012-06-01 17:27:26 · 1042 阅读 · 0 评论 -
百度之星资格赛——G题
G:聊天就是Repeat时间限制: 1000ms 内存限制: 65536kB描述百度Hi作为百度旗下的即时聊天工具,在百度公司内部很是流行。要实现这样的一个聊天工具,最重要的问题就是要能保证我发出的内容能原封不动的在接收同学那里显示出来。今天,就给你一个机会,让你模拟一下百度Hi传递信息的过程,把我发给Robin的聊天内容原封不动的输出出来。输入输入的聊天内容数据有多组,每组数原创 2012-06-01 17:23:05 · 1089 阅读 · 0 评论 -
百度之星资格赛——C题
C:易手机的套餐时间限制: 1000ms 内存限制: 10000kB描述装载百度易平台的易手机已经上市,为了更好的为大家提供服务。百度与合作的运营商正在讨论为易手机用户推出一款特别的套餐,帮助大家更好的利用易手机。作为这个项目负责人的晓萌调研了大量用户使用这个套餐后会出现的资费预估,让我们来看看这个特别的套餐到底会带来怎样资费情况吧。输入输入数据包括十二行,每行包括一个数字(不原创 2012-06-01 17:18:46 · 976 阅读 · 0 评论 -
百度之星资格赛——B题
B:小诺爱USB设备时间限制: 1000ms 内存限制: 65536kB描述在百度工作的小诺是一个USB设备迷,在他桌上有一堆的USB设备——USB鼠标、USB小音箱、USB按摩器……但是,公司配给小诺的ThinkPad X系列的电脑只有一个能用的USB接口。不过还好,小诺有一堆的USB Hub,可以把一个可用的USB接口变成多个USB接口。但是,小诺很难确定这些USB Hub能否满足原创 2012-06-01 17:17:18 · 1183 阅读 · 0 评论 -
百度之星资格赛——H题
H:用户请求中的品牌时间限制: 1000ms 内存限制: 65536kB描述馅饼同学是一个在百度工作,做用户请求(query)分析的同学,他在用户请求中经常会遇到一些很奇葩的词汇。在比方说“johnsonjohnson”、“duckduck”,这些词汇虽然看起来是一些词汇的单纯重复,但是往往都是一些特殊品牌的词汇,不能被拆分开。为了侦测出这种词的存在,你今天需要完成我给出的这个任务——原创 2012-06-01 17:26:11 · 1146 阅读 · 0 评论 -
(译)浮点数比较—Comparing floating point numbers
from: http://www.cygnus-software.com/papers/comparingfloats/comparingfloats.htm本人翻译了一小段,由于懒惰,没有继续,建议直接看原文。======================================================================================翻译 2012-06-23 14:45:01 · 3877 阅读 · 0 评论 -
gcc: collect2 cannot find 'ld'
|字号 订阅gcc编译的时候出现如下问题:collect2 cannot find 'ld' 后来经查阅发现确实/usr/bin 没有ld,which ld 查看没有,选择重装binutilsyum reinstall binutils解决问题!!原创 2012-11-03 22:07:10 · 9753 阅读 · 3 评论 -
通信网络实验——停等式ARQ协议实现
一.实验目的计算机网络的数据链路层协议保证通信双方在有差错的通信线路上进行无差错的数据传输,是计算机网络各层协议中通信控制功能最典型的一种协议。本实验实现一个数据链路层协议的数据传送部分,目的在于使学生更好地理解基本数据链路层协议的基本工作原理,掌握计算机网络协议的基本实现技术。二.实验内容在一个数据链路层的模拟实现环境中,用C 语言实现下面数据链路层协议。分析一个理想的链原创 2012-11-13 23:04:50 · 8339 阅读 · 3 评论 -
(2014微软实习生笔试题)1.String reorder
题目:Time Limit: 10000msCase Time Limit: 1000msMemory Limit: 256MB DescriptionFor this question, your program is required to process an input string containing only ASCII characters between原创 2014-04-18 11:12:41 · 1398 阅读 · 0 评论 -
递归遍历数组子集
题目:数组(例如{a,b,c}),递归打印出所有子集思路:数组元素要么在子集中,要么不在子集中,N个元素的数组子集个数为2^N,在不在子集中可以用0和1表示,N个元素的子集就可以用N位二进制数表示,因此遍历所有子集只需遍历所有N位二进制数即可代码如下:原创 2014-04-18 11:02:40 · 4278 阅读 · 0 评论 -
SystemC遇到的C++小问题
“右尖括“”问题 在 C++ 语言中,必须用空格来分隔两个连续的右尖括号 (>),否则这些右尖括号将解析为按位右移运算符 (>>)。比如:sc_signalsc_int > state;否则vivado会出现语法错误,VS2010没有问题。sc_fifo中使用自定义类型时,必须在类型中重载操作符以及重写sc_trace方法,否则出现编译器错原创 2013-07-22 11:51:29 · 2473 阅读 · 0 评论 -
C语言分割字符串函数strtok
转自:http://blog.csdn.net/zhangyang0402/article/details/1654850在编程过程中,有时需要对字符串进行分割.而有效使用这些字符串分隔函数将会给我们带来很多的便利.下面我将在MSDN中学到的strtok函数做如下翻译.strtok :在一个字符串查找下一个符号char *strtok( char *strToken转载 2012-03-06 13:55:32 · 1405 阅读 · 0 评论 -
通信网络实验——sniffer(嗅探器)设计与实现
一.实验目的利用WINPCAP,实现数据包的捕获与初步的数据分析。二.实验报告1.详细描述实验过程。2.给出实现方案的设计,及调试中遇到的问题。实验环境:Fedora 16 Linux , gcc 4.6.3实验准备:安装libpcap库实验前先下载并安装libpcap库。在http://www.tcpdump.org/网站上下载libpcap-1.2.1.原创 2012-11-23 19:45:47 · 4092 阅读 · 0 评论 -
通信网络实验——UDP 的socket实现
一.实验目的熟练掌握UDP、TCP协议的 Client/Server模式的通信原理。二.实验原理1.第一步中,客户端向服务端提出连接请求。这时TCP SYN标志置位。客户端告诉服务端序列号区域合法,需要检查。客户端在TCP报头的序列号区中插入自己的ISN。2.服务端收到该TCP分段后,在第二步以自己的ISN回应(SYN标志置位),同时确认收到客户端的第一个TCP分段(ACK标志置位原创 2012-11-13 22:57:06 · 4005 阅读 · 2 评论 -
通信网络实验——滑动窗口协议模拟实现
一.实验目的实现一个滑动窗口协议的数据传送部分,目的在于使学生更好地理解基本滑动窗口协议的基本工作原理,掌握计算机网络协议的基本实现技术。二.实验原理(1)窗口机制滑动窗口协议的基本原理就是在任意时刻,发送方都维持了一个连续的允许发送的帧的序号,称为发送窗口;同时,接收方也维持了一个连续的允许接收的帧的序号,称为接收窗口。发送窗口和接收窗口的序号的上下界不一定要一样,甚至大小也原创 2012-11-13 23:10:19 · 11341 阅读 · 1 评论 -
通信网络实验——TCP 的socket实现
一、实验目的1.熟练掌握socket编程命令。2.为下一步实验打好基础。二、实验原理1.网络编程就是通过计算机网络与其他程序进行通信的程序,Socket编程是网络编程的主流工具。2.Socket API是实现进程间通信的一种编程设施,也是一种为进程间提供底层抽象的机制。3.尽管应用开发人员很少需要在该层编写代码,但是理解socket API还是非常重要的。主要有两点原因:原创 2012-11-13 22:50:41 · 7011 阅读 · 0 评论 -
百度之星资格赛——E题
E:C++ 与Java时间限制: 2000ms 内存限制: 65536kB描述在百度之星的贴吧里面,Java的爱好者和C++的爱好者总是能为这两种语言哪个更好争论上几个小时。Java的爱好者会说他们的程序更加整洁且不易出错。C++的爱好者则会嘲笑Java程序很慢而且代码很长。另一个Java和C++爱好者不能达成一致的争论点就是命名问题。在Java中一个多个单词构成的变量名应该按照如原创 2012-06-01 17:21:45 · 1077 阅读 · 0 评论 -
百度之星资格赛——D题
D:共同狂欢时间限制: 1000ms 内存限制: 131072kB描述百度2005年8月5日上市时,在北京和纳斯达克的同学们每一个小时整点时就会通一次电话,对一下表,确认一切相关活动都精确同步。但是要注意,在两边的同学位于不同的时区,在夏时制时,两地时差12小时,因此,每次对表都需要做一下时区转换。你来帮我们完成这个有点麻烦的工作吧。输入输入的第一行包括一个整数T(T ≤ 30原创 2012-06-01 17:20:28 · 1320 阅读 · 0 评论 -
关于undefined reference to "function name"
今日使用qthread,写了个简单的例子first_qthread.cpp。。#include #include int main(int argc, char* argv[]){ qthread_t* me; int id; qthread_initialize(); qthread_init(1);转载 2011-11-14 12:42:21 · 2489 阅读 · 0 评论 -
在windows下使用eclipse for c++来编译c/c++
From:http://blog.csdn.net/piyajee/article/details/6121186下载MinGW,安装到C盘根目录下,文件名一定要是MinGW ,bin文件夹中的make.exe如果是其他名称一定要改成make.exe,因为eclipse只识别make。修改系统环境变量: 打开:“我的电脑->属性->高级->环境变量->系统变量”编辑如下转载 2011-12-04 22:09:19 · 2513 阅读 · 0 评论 -
解决Netbeans/eclipse c/cpp 下 undefined reference to ...../无法找到相关文件目录的问题
在公司实习,项目中的c/cpp部分要在linux下做.由于刚转到linux下不久不太熟悉,走了不少弯路.项目中要用到libxml2库,直接在终端下编译运行成功$g++ testAttr.c -o getRefTest -I /usr/include/libxml2/ -L /usr/lib -lxml2但是换到eclipse和netbeans下就悲剧了,弄里一两天没解决,网上原创 2011-11-11 18:29:27 · 1614 阅读 · 0 评论 -
libvirt-0.9.0 编译问题
From:http://blog.163.com/gjx0619@126/blog/static/12740839320114494341832/#./configure (如果有老版本的libvirt,建议使用 ./configure --prefix=/usr --libdir=/usr/lib64 --localstatedir=/var --sysconfdir转载 2011-11-11 22:39:04 · 3161 阅读 · 0 评论 -
libvirt安装过程
from: http://blog.csdn.net/hjxhjh/archive/2010/05/15/5594527.aspxLibvirt comes with direct support for the Python language. If your libvirt is installed as packages, ensure you have the appropriat转载 2011-11-11 21:46:40 · 2096 阅读 · 0 评论 -
bssh2 is a client-side C library implementing the SSH2 protocol
http://www.libssh2.org/Capabilities and Features Key Exchange Methods: diffie-hellman-group1-sha1, diffie-hellman-group14-sha1, diffie-hellman-group-exchange-sha1Hostkey Types: ssh-rsa, ssh-原创 2011-11-11 23:35:14 · 1401 阅读 · 0 评论 -
gcc编译参数
1、gcc包含的c/c++编译器gcc、cc、c++、g++gcc和cc是一样的,c++和g++是一样的,一般c程序就用gcc编译,c++程序就用g++编译2、gcc的基本用法gcc test.c这样将编译出一个名为a.out的程序gcc test.c -o test这样将编译出一个名为test的程序-o参数用来指定生成程序的名字3、为什么会出现unde转载 2011-11-11 18:33:04 · 1206 阅读 · 1 评论 -
Ubuntu下搭建C/C++开发环境
转自:http://www.kelenight.com/?post=17C/C++开发环境搭建的资料,供大家参考。 以下文字主要讲如何搭建Code::Blocks+wxWidgets。搭建步骤:1.安装编译环境,C库、C++库和Boost库在终端中执行的命令:sudo apt-get install libc6 libc6-dbg libc6-dev glibc-d转载 2011-11-07 22:23:37 · 1284 阅读 · 0 评论 -
《编程之美》学习笔记——中国象棋将帅问题
应该说这是一个很简单的问题,但是想巧妙解答还是得费点周折,以下是原书提供的三种方法:====================================================================================================/* *编程之美 *1.2中国象棋将帅问题 *代码1 */#include#define h原创 2011-12-10 01:07:18 · 2588 阅读 · 2 评论 -
Configure,Makefile.am, Makefile.in, Makefile文件之间
原文地址:http://blogold.chinaunix.net/u2/66321/showart_2059088.html1.autoscan (autoconf): 扫描源代码以搜寻普通的可移植性问题,比如检查编译器,库,头文件等,生成文件configure.scan,它是configure.ac的一个雏形。 your source fi转载 2012-03-26 18:21:40 · 1125 阅读 · 0 评论 -
手把手教你把Vim改装成一个IDE编程环境(图文)
原文地址:http://blog.chinaunix.net/space.php?uid=21289517&do=blog&id=3081793By:吴垠Date:2007-09-07Version:0.5Email:lazy.fox.wu#gmail.comHomepage:http://blog.c转载 2012-03-26 18:32:57 · 1385 阅读 · 0 评论 -
2012百度之星初赛——A题
A:度度熊就是要第一个出场时间限制: 1000ms 内存限制: 65536kB 描述 Baidu年会安排了一场时装秀节目。N名员工将依次身穿盛装上台表演。表演的顺序是通过一种“画线”抽签的方式决定的。首先,员工们在一张白纸上画下N条平行的竖线。在竖线的上方从左到右依次写下1至N代表员工的编号;在竖线的下方也从左到右依次写下1至N代表出场表演的次序。 接着,员工们原创 2012-06-02 17:53:47 · 1391 阅读 · 0 评论 -
2012百度之星程序设计大赛试题及答案(答案来源网络)
A:百度计算器的加法时间限制: 1000ms 内存限制: 10000kB描述百度框计算中提供了计算器这个功能,模拟计算器中的复杂功能,我们最先需要解决的就是实现加法模块。今天就给你个机会,和百度计算器一样,计算一下十以内的加法吧。输入仅有一组数据,包含两个正整数,分别为a, b(0 输出一个正整数,暨输入a, b后对应的a+b的计算结果样例输入5 2样例输出原创 2012-06-01 17:37:33 · 2771 阅读 · 1 评论 -
字符串面试题:字符串逆序
几点说明1. 所有题目全部来自网络,书籍,或者我自己的面试经历,本人只是负责搜集整理。在此对原作者表示感谢!2. 我已经尽力确保文字及程序的正确性,但我毕竟是凡人,如果您发现了文章中的错误,或者有更好的解法,请一定留言相告,以免误导大家!3. 所有代码都采用C/C++编写很早就准备写一个字符串系列的面试题,本来已经写好了,大概有十几道题,但是写完才发现,文章好长,连我自己都没有耐心转载 2012-05-27 15:43:28 · 1419 阅读 · 0 评论 -
大整数运算问题
背景:poj 1001Time Limit: 500MS Memory Limit: 10000KDescriptionProblems involving the computation of exact values of very large magnitude and precision are common. For example, the computa原创 2012-05-27 15:33:47 · 2460 阅读 · 0 评论 -
关于 malloc和字符指针的一点问题
前天在做一个大整数相乘的算法,用链表实现,最后一步是字符串逆序,其中用到下面一条语句。char *c = (char*)malloc(sizeof(char)* 5); 调试的时候想看看strlen(c),结果如下:sizeof(c)为24,本以为结果是5的,然后郁闷了。经过一番思考,原来问题出在一个比较隐秘的地方。由于malloc函数是不会自动给分配的内存初始化的(cal原创 2012-05-27 14:48:12 · 3283 阅读 · 0 评论 -
1+2+3+...+n不能用while、for、if else等实现
转自:http://blog.csdn.net/alexingcool/article/details/6579268全题为不能用乘除法,while for if else switch 条件判断语句等实现1+2+3+...+n首先不难想到的是编译期求解,即使用模板code如下:[cpp] view plaincopy转载 2012-04-16 12:57:54 · 1218 阅读 · 0 评论 -
unix环境高级编程-chdir、fchdir和getcwd函数。
转载:出处不明#include int chdir(const char* pathname); int fchdir(int filedes); 每个进程都有一个当前的工作目录,此目录是搜索所有相对路径的起点。进程通过调用chdir或fcdir函数可以更改当前工作目录。进程通过调用chdir或者fchdir函数可以更改当前工作目录。这两个函数分转载 2012-03-21 22:13:19 · 1030 阅读 · 0 评论