C & C++
Q-WHai
O ever youthful,O ever weeping.
展开
-
用递归和位移进行枚举子集合
代码示例原创 2014-04-26 11:17:52 · 1566 阅读 · 0 评论 -
模拟计算机网络中的零比特填充
学网络的时候,学到一个零比特填充法。是用来保证数据在网络中传输的时候有一个比较稳妥的方式不产生错误。用零比特填充是因为我们要让7EH(01111110)这个16进制数据表示数据的结尾,正因为如此,所以我们不能让数据本身包含这个7E数据,因为这样的话,数据就会被认为是结束。我们采用的方法是只让连续的5个‘1’在一起,当有6个‘1’的时候,在第5个‘1’和第6个‘1’之间填充一个‘0’,下面笔者就这一个方法用代码的方式来实现。由于只是想实现这个基本功能,所以就不在文件末尾添加7EH结束标志了。。。。原创 2014-04-17 11:39:40 · 12436 阅读 · 5 评论 -
模拟网络通信中存储转发的分组交换算法
分组交换很简单,就是将接收端接收到的一连串数据先存储下来,然后进行分组(分组的目的是因为原数据长度太长,在通信中,因为噪音的干扰会失真重传。那么,这样的话发送者就必须从头开始将原数据再发送一次,这样的通信在数据量比较多的情况显然就会影响到通信效率),在分组的数据上进行添加首部,把这样添加地首部的数据放网络上进行传输。在目的端,再把分组的数据除掉首部,进行组装,即是一个还原的过程。原创 2014-04-17 11:27:45 · 3539 阅读 · 0 评论 -
在Linux下编写运行你的第一条代码——Hello Linux
最近刚接触Linux,也是在啃那个公认的《鸟哥的Linux私房菜》。是的,的确讲得挺好的。现在看到第10章 vim程序编辑器。虽然鸟哥不太建议我们跳着来阅读他的文章,但是我还是跳了一两个章节没有阅读。别误会,我不是大牛。其实,知道vim也不是学到这一章才了解的。之前是知道的,也用过。不过想在vim中编写C代码的还就是刚刚的想法。于是,我做了一个实验。原创 2015-03-04 16:18:05 · 2785 阅读 · 0 评论 -
北大OJ百练——2721:忽略大小写比较字符串大小
一般我们用strcmp可比较两个字符串的大小,比较方法为对两个字符串从前往后逐个字符相比较(按ASCII码值大小比较),直到出现不同的字符或遇到'\0'为止。如果全部字符都相同,则认为相同;如果出现不相同的字符,则以第一个不相同的字符的比较结果为准。但在有些时候,我们比较字符串的大小时,希望忽略字母的大小,例如"Hello"和"hello"在忽略字母大小写时是相等的。请写一个程序,实现对两个字符串进行忽略字母大小写的大小比较。原创 2014-04-24 20:07:11 · 1755 阅读 · 0 评论 -
北大OJ百练——3179:最长单词(C语言)
输入一个英文句子,长度不超过200个字符。其中可包含的符号只有逗号","和句号"."。输出句子中最长的一个单词。如果有多个这样的单词,输出最后出现的。原创 2014-04-20 13:53:53 · 2976 阅读 · 0 评论 -
北大OJ百练——4075:矩阵旋转(C语言)
给定一个n*n的矩阵,求出该矩阵顺时针旋转90度后的矩阵。原创 2014-04-18 14:22:10 · 4712 阅读 · 0 评论 -
北大OJ百练——4073:最长公共字符串后缀(C语言)
给出若干个字符串,输出这些字符串的最长公共后缀。原创 2014-04-17 00:31:46 · 3221 阅读 · 0 评论 -
北大OJ百练——4074:积水量(C语言)
凹凸不平的地面每当下雨的时候总会积水。假设地面是一维的,每一块宽度都为1,高度是非负整数,那么可以用一个数组来表达一块地面。当下过雨后,地面就会积水,上图中蓝色的区域就是积水区域。现在给你一个数组表示地面,求下过雨后这块地面有多少积水量(假设不蒸发、不渗透)。原创 2014-04-16 20:27:23 · 4455 阅读 · 1 评论