随笔分类 -  C/C++

摘要:废话不多说,大名鼎鼎的Lenstra-Lenstra-Lovasz(LLL)算法。实现参考论文:Factoring Polynomials with Rational Coefficients, 作者 A.K. Lenstra, H.W. Lenstra, Jr. and L. Lovasz./* ... 阅读全文
posted @ 2015-11-26 10:54 fangying 阅读(4939) 评论(0) 推荐(0)
摘要:Apple在中国(上海)有公司业务,但是感觉主要是做测试工作的部门,主要是保障Apple的产品质量QE。面试的时候,面试官出了一道题目,我貌似曾今开过类似的题目,但是由于当场发挥不佳没有答出来。题目大意是这样的:在公司的某个通信协议中存在这样一个场景,甲给乙发送了一个数据帧,这个数据帧最前面的一个字... 阅读全文
posted @ 2015-11-13 13:20 fangying 阅读(884) 评论(0) 推荐(0)
摘要:二叉树的层序遍历,或者说是宽度优先便利,是经常考察的内容。 问题一:层序遍历二叉树并输出,直接输出结果即可,输出格式为一行。 #include <iostream> #include <vector> #include <deque> #include <map> #include <set> #i 阅读全文
posted @ 2015-09-06 14:50 fangying 阅读(448) 评论(0) 推荐(0)
摘要:给定两个串,均由最小字母组成。求这两个串的最大公共字串LCS(Longest Common Substring)。使用动态规划解决。#include #include #include #include using namespace std;#define MAX 100int LCS(strin... 阅读全文
posted @ 2015-08-11 21:29 fangying 阅读(221) 评论(0) 推荐(0)
摘要:#include #include #include #include #include #include #include #include using namespace std;typedef struct BinTree{ int data; struct BinTree *left; st... 阅读全文
posted @ 2015-08-11 17:03 fangying 阅读(115) 评论(0) 推荐(0)
摘要:使用C/C++语言写一个函数,实现字符串的反转,要求不能用任何系统函数,且时间复杂度最小。函数原型是:char *reverse_str(char *str)#include char* reverse_str(char* str){ if(NULL == str) return... 阅读全文
posted @ 2015-08-09 22:54 fangying 阅读(212) 评论(0) 推荐(0)
摘要:交换排序算法主要有:(1)冒泡法(2)快速排序法冒泡法:两两相邻记录进行比较,如果反序这交换,直到没有反序的记录为止。 #include #include using namespace std;//这种交换方式效率较低vector BubbleSort(vector &vec){ for(... 阅读全文
posted @ 2015-07-23 14:19 fangying 阅读(197) 评论(0) 推荐(0)
摘要:描述: 输入一组大于等于0的整数,根据从大到小排序后输出,如果排序后有连续整数时,只输出连续数中最大和最小的两个数。输入的所有整数各不相同,即不用考虑两个整数相同的情况。运行时间:无限制内存限制:无限制输入:一组大于等于0的整数,不考虑非法输入,各个整数之间以逗号(",")分隔,输入总数长度小于10... 阅读全文
posted @ 2015-07-02 12:36 fangying 阅读(314) 评论(0) 推荐(0)
摘要:经常我们碰到这样一个C语言问题,例如:输入一个组整数,按照从小到大排序后输出结果输入: 1 7 9 2 4输出: 1 2 4 7 9这里要用C语言读入一段数的话,如果用int array[100];while(scanf("%d", &src) != EOF){ i++; array[i] = sr... 阅读全文
posted @ 2015-07-01 15:27 fangying 阅读(2041) 评论(0) 推荐(0)
摘要:为什么说这个链表做的经典呢,哥哥我从Linux内核里边儿扣出来的,要么怎么说内核不是一般人能写的,这代码太TM优美了! 这里有一篇参考文章:http://isis.poly.edu/kulesh/stuff/src/klist/,下面的分析来自其他人的分析这里做了整理,使得它便于阅读。 在l... 阅读全文
posted @ 2014-10-02 14:25 fangying 阅读(434) 评论(0) 推荐(0)
摘要:做通讯项目的时候,经常要进行数据收发校验。发送端的数据通过复杂的通讯系统(例如OFDM系统),依次进行交织、编码(LDPC)、映射、IFFT、串并转换……等等,达到接收端,我们只有通过反复的对比才能验证流程的正确性。因为数据的收发都是比特流,所以经常使用16或者二进制文件进行比较。 很多调试工... 阅读全文
posted @ 2014-06-27 09:49 fangying 阅读(2505) 评论(0) 推荐(0)
摘要:考虑下面三段代码:片段1void GetMemory(char *p){p = (char *)malloc(100);}void Test(void){char *str = NULL;GetMemory(str);strcpy(str, "hello world");printf(str);fr... 阅读全文
posted @ 2014-06-14 19:04 fangying 阅读(193) 评论(0) 推荐(0)
摘要:C语言的基本类型有:char, short ,int ,long ,float ,double 一共6种基本类型。C++语言有:bool, char ,wchar_t, short, int , long, float, double, long double 共9种内置数据类型。Java语言有:b... 阅读全文
posted @ 2014-06-03 14:26 fangying 阅读(233) 评论(0) 推荐(0)
摘要:在标准C语言中, i++和 ++i的区别显而易见。 但是,当在for循环中使用 i++和 ++i的时候,会发现。只要这两种语句不用来赋值操作(作为右值,赋值给左值),那么这两种写法其实是一样的。for中其实不管是i++或++i都是在for循环体全部执行完毕后才执行,如:for(inti=0;i... 阅读全文
posted @ 2014-06-03 14:03 fangying 阅读(1246) 评论(0) 推荐(0)
摘要:今天码代码的时候,出现了一个诡异的问题:首先:函数 pkt_analyzer 返回了一个 PktUnit类型的指针。我先把端点跑到puu赋值后的下一句,查看puu里面的内容,发现是正确的:payload_len = 7,pkt_len = 35接着我再向下跑一步,发现puu内容就不对了: paylo... 阅读全文
posted @ 2014-05-08 19:25 fangying 阅读(1276) 评论(0) 推荐(0)
摘要:今天需要生成一个随机数,奇怪的问题发生了。#include #include #include #define MSG_LEN 2610int main(int argc,char **argv){ FILE *fp = NULL; char msg_bit; int i = 0; char comma = ','; if((fp = fopen("msg.txt","w+")) == NULL) { printf("Error can't open file!\n"); return -1; } fo... 阅读全文
posted @ 2013-12-13 21:26 fangying 阅读(211) 评论(0) 推荐(0)