- 博客(52)
- 资源 (11)
- 收藏
- 关注
原创 C++实现求解最大公约数和最小公倍数
//求最大公约数#include#include>using namespace std;////更相减损法int gcd(int a,int b){int count=0;while(a%2==0&&b%2==0)//任意给定两个正整数;判断它们是否都是偶数。若是,则用2约简{a/=2;b/=2;count++;}while(a!=
2014-10-31 09:36:38 1226
转载 802.11b协议的一些介绍和说明
802.11b WLAN的物理层速率可达11 Mbps,是IEEE 802.11(支持1 Mbps和2 Mbps)的五倍。同时,802.11b还同时支持1 Mbps,2 Mbps,5.5 Mbps。 802.11b WLAN和IEEE 802.3 以太网的原理很类似,都是采用载波侦听的方式来控制网络中信息的传递。不同的是:Ethernet采用的是CSMA/CD(载波侦听/冲突检测
2014-10-30 17:22:57 5462
转载 802.11概述及帧结构分析
目录:1 802.11概述2 拓扑结构及服务类型3 帧格式 3.1 帧格式概述 3.2 MAC Header 3.3 帧类型1 802.11概述 IEEE 802.11 是一个协议簇, 主要包含以下规范: 1 )物理层规范: 802.11b , 802.11a , 802.11g ; 2 )增强型
2014-10-30 17:18:54 1642
转载 编程珠玑第二章习题答案
转载自1、提供单词和词典,找到该单词的所有变位词,可以事先花时间和空间处理下该词典。因为要查找变位词,事先遍历词典,得到每个单词签名,并建立签名列表,签名列表的每个项包含了该签名的所有单词。有了这个列表,直接得到提供单词的签名去遍历签名列表就能找到所有变位词。2、给定一个4300000000个32位整数的顺序文件,请问你如何可以找到一个至少出现两次的整数因为2^32
2014-10-28 22:31:08 2099
转载 给定一个单词集合,找出可以相互转换的集合。比如abc bca cba都可以相互转换(变位词)
算法如下:单词按照字母进行排序,单词间进行排序,这样相同标识的单词聚集到一起这里用C++来写了。 [html] view plaincopyvoid gen_label(vectorstring> &dict, mapstring, vectorstring> >&rec) { for (int i
2014-10-28 20:44:15 973
转载 将一个n元一维向量向左旋转i个位置。例如,当n = 8且i = 3时,向量abcdefgh旋转为defghabc
void Swap(char *a, char *b){ char temp = *a; *a = *b; *b = temp;}void Reverse(char *str, int left, int right){ if(str == NULL || left >= right) {
2014-10-28 20:25:20 536
转载 给定一个最多包含40亿个随机排列的32位整数的顺序文件,找出一个不在文件中的32位整数
给定一个最多包含40亿个随机排列的32位整数的顺序文件,找出一个不在文件中的32位整数。 1、在文件中至少存在这样一个数? 2、如果有足够的内存,如何处理? 3、如果内存不足,仅可以用文件来进行处理,如何处理?答案: 1、32位整数,包括-2146473648~~2146473647,约42亿个整数
2014-10-28 20:06:18 1900
转载 数据结构基础-Hash Table详解
理解Hash哈希表(hash table)是从一个集合A到另一个集合B的映射(mapping)。映射是一种对应关系,而且集合A的某个元素只能对应集合B中的一个元素。但反过来,集合B中的一个元素可能对应多个集合A中的元素。如果B中的元素只能对应A中的一个元素,这样的映射被称为一一映射。这样的对应关系在现实生活中很常见,比如: A -> B
2014-10-27 22:40:30 632
转载 编程珠玑 第一章第9题 空间换时间的数据结构问题
One problem with trading more space to use less time is that initializing the space can itself take a great deal of time. Show how to circumvent this problem by designing a technique to initialize an
2014-10-27 22:23:09 633
转载 编程珠玑第一章习题解答
第一题 如果不缺内存,如何使用一个具有库的语言来实现一种排序算法以表示和排序集合?解答: 首先,C++有实现排序的库函数:sort,该函数实现的是快速排序;另外,C++的容器map和set均可以实现排序,由于map和set的实现是红黑树,所以具有自动排序功能,当然,这个需要数据不能重复; 下面为了复习下快速排序的实现,重新实现了一遍,代码如下所示。
2014-10-27 16:52:32 1597
转载 C++获取当前时间和计算程序运行时间的方法
#include #include //关键 using namespacestd; int main(){ clock_t start, finish; doubletotalTime; start = clock(); //需要测试运行时间的代码段放在这 finish = clock();
2014-10-27 16:38:47 881
转载 腾讯面试题:给40亿个不重复的unsigned int的整数,没排过序的,然后再给一个数,如何快速判断这个数是否在那40亿个数当中?
1.腾讯面试题:给40亿个不重复的unsigned int的整数,没排过序的,然后再给一个数,如何快速判断这个数是否在那40亿个数当中?思想:用数组来存这40亿个数,而且只能用bit来表示。why?40亿约等于4G,就算你用一个字节来,也需要4GB,32位的机子爆掉了。如果用bit来存,意思一个字节就能表示8个数,这个样子只需要512M内存。这个属于接受范围。如果有内存要求,则可以分块。
2014-10-24 23:34:39 3101
转载 位图数据结构的
介绍(20120511)位图就是通过将数组下标与应用中的一些值关联,数组中该下标所指定的位置上的元素可以用来标识应用中值的情况(是否存在 or 数目 or 。。。)。 位图中的值可以是计数、标识(如例1)。可以运用在快速查找、排重、删除?、排序、压缩数据等。实现不同语言版本相关应用压缩 排序
2014-10-24 14:09:30 548
转载 求n个骰子的点数
百度2010年某个部门(不记得是哪个了)的实习生笔试题第一题就是这种题,只是一点小小的改动而已。 原题依然来源于网络中某位大侠的BLOG,感谢提供素材:) 写这篇blog是因为原文中提到的方法和原文评论中的方法相关比较大,评论中的方法用到了DP,效率好很多。后来仔细想想,这种实现方法用“表格法”来解释更恰当,至底向上填写表格,最终得到结果。另外,这种至底向上的填表法
2014-10-20 08:17:00 647
转载 数组中只出现一次的(一个数、两个数、三个数)
题目:一个数组中有三个数字a、b、c只出现一次,其他数字都出现了两次。请找出三个只出现一次的数字。分析:在博客http://zhedahht.blog.163.com/blog/static/2541117420071128950682/中我们讨论了如何在一个数组中找出两个只出现一次的数字。在这道题中,如果我们能够找出一个只出现一次的数字,剩下两个只出现一次的数字就很容易找出来了。如果我们
2014-10-16 20:41:12 681
转载 程序调试的时候利用Call Stack窗口查看函数调用信息
利用Call Stack窗口查看函数调用信息Call Stack窗口能够查看当前方法的调用信息。例如方法的参数信息,调用当前方法的参数等。实例实现的是在按钮的单击事件方法内,调用自定义方法,在Call Stack窗口内可以显示调用的过程,如图1.75所示。 图1.75 利用Call Stack窗口查看函数调用信息Call Stac
2014-10-15 16:21:00 10047
转载 递归与尾递归
1、递归 关于递归的概念,我们都不陌生。简单的来说递归就是一个函数直接或间接地调用自身,是为直接或间接递归。一般来说,递归需要有边界条件、递归前进段和递归返回段。当边界条件不满足时,递归前进;当边界条件满足时,递归返回。用递归需要注意以下两点:(1) 递归就是在过程或函数里调用自身。(2) 在使用递归策略时,必须有一个明确的递归结束条件,称为递归出口。递归一般用于解决三类问题
2014-10-15 10:42:25 616
转载 递归式求时间复杂度的递归树的方法举例说明
用递归树的时候注意一下递归树的写法规则:递归算法时间复杂度的计算方程式一个递归方程: 在引入递归树之前可以考虑一个例子: T(n) = 2T(n/2) + n2 迭代2次可以得: T(n) = n2 + 2(2T(n/4) + (n/2) 2) 还可以继续迭代,将其完全展开可得: T(n) = n2 + 2
2014-10-15 09:48:17 2714
转载 递归式求时间复杂度的代入法与迭代法的举例讲解
在算法分析中,当一个算法中包含递归调用时,其时间复杂度的分析会转化为一个递归方程求解。实际上,这个问题是数学上求解渐近阶的问题,而递归方程的形式多种多样,其求解方法也是不一而足,比较常用的有以下四种方法: (1)代入法(Substitution Method) 代入法的基本步骤是先推测递归方程的显式解,然后用数学归纳法来验证该解是否合理。
2014-10-15 09:46:06 8099 1
转载 递归式的时间复杂度的计算
递归算法的时间复杂度分析在算法分析中,当一个算法中包含递归调用时,其时间复杂度的分析会转化为一个递归方程求解。实际上,这个问题是数学上求解渐近阶的问题,而递归方程的形式多种多样,其求解方法也是不一而足,比较常用的有以下四种方法:方法一:代换法代换法主要需要以下两个步骤1、 猜答案,不需要完全猜出来,不需要知道常熟系数的准确值,而只需要猜出它的形式,比如猜一个递归式
2014-10-15 09:37:19 3154
转载 算法导论中求解时间复杂度的三种方法
这一章讲的是递归式(recurrence),递归式是一组等式或不等式,它所描述的函数是用在更小的输入下该函数的值来定义的。本章讲了三种方法来解递归式,分别是代换法,递归树方法,主方法。1.代换法(Substitution method)(P38~P40)定义:即在归纳假设时,用所猜测的值去代替函数的解。用途:确定一个递归式的上界或下界。缺点:只能用于解的形式
2014-10-14 10:34:25 8442
原创 C++实现二分查找(递归方法和非递归方法)
#includeusing namespace std;bool IsInvalidInput=false;int BinarySearch(int *data,int length,int start,int end,int k)//二分查找,data必须是一个排序的数组。在这里默认data是按照升序排序的数组{if(data==NULL||lengthend){Is
2014-10-14 10:26:51 1046
转载 时间复杂度的计算方法
1.1 频度统计法。频度统计法指以程序中语句执行次数的多少作为算法时间度量分析的一种方法。通常情况下,算法的时间效率主要取决于程序中包含的语句条数和采用的控制结构这两者的综合效果。因此,最原始且最牢靠的方法是求出所有主要语句的频度f(n),然后求所有频度之和。例如:如下形式的语句段:for (i=1;i{ y++;for (j=0;jx++;
2014-10-14 08:36:23 3833
转载 概率和统计的matlab指令
1、描述性统计分析 描述性统计分析函数标准用法都是对列状数据进行操作。mean(X):当X为向量,返回向量的均值;当X为矩阵,返回矩阵的每列元素均值构成的行向量。 min,max,sort,mean,median,std,var,sum,prod,cumsum,sumprod等函数用法与mean类似。 cov(X,Y):这里X,Y为向量,分别代表一个样本,求得样本
2014-10-13 22:16:46 1772
原创 求数组的最大子数组和最大子数组的和
#includeusing namespace std;bool IsInvalidInput=false;int MaxSumOfSubarrays(int data[],int length,int &start,int &end){int max=data[0];//这么做是为了处理全是负数的情况,如果令为0,那么当输入都是负数的情况下就会有bugint startt
2014-10-11 12:45:36 748
原创 C++求数组中的逆序对
#includeusing namespace std;//归并排序统计逆序对int merge(int num[],int start,int middle,int end,int*temp){int k=0,i=start,j=middle+1,count=0;for(;i{if(num[i]>num[j]){temp[k++]=num[i++];//按
2014-10-10 23:58:31 1714
转载 全局变量与静态全局变量
1)全局变量是不显式用static修饰的全局变量,但全局变量默认是动态的,作用域是整个工程,在一个文件内定义的全局变量,在另一个文件中,通过extern 全局变量名的声明,就可以使用全局变量。2)全局静态变量是显式用static修饰的全局变量,作用域是声明此变量所在的文件,其他的文件即使用extern声明也不能使用。静态局部变量在局部变量前,加上关键字static,
2014-10-10 22:57:32 1520
原创 C++实现输入两个字符串,从第一字符串中删除第二个字符串中所有的字符
一定要注意一点就是:char* p是一个指针,根本没分配内存,他指向的"abc123ABC" 是只读的,不能改变,你在下面给他赋值肯定是错的而char p[]是一个数组,已经分配内存,是将"abc123ABC" 复制到该内存里面,这个内存是可读写的例如,输入”They are students.”和”aeiou”,则删除之后的第一个字符串变成”Thy r stdnts.”。
2014-10-10 13:40:01 4461
转载 char str[]与char *str的区别
在C语言中,对字符串的操作主要有两种方式,一是使用字符数组,char str[];二是使用字符指针。那么二者有什么区别呢?下面将分述二者的使用,最后进行比较。一、字符数组 使用char str[]定义一个字符数组str,中括号内可以写上数字表示数组大小,也可以不写。如果不写数字,则必须为字符数组提供初始值,以便编译器进行内存分配。可以使用字符串字面
2014-10-10 13:33:39 780
转载 C++ 中 string earse 函数的使用
C++中string erase函数的使用(转载)erase函数的原型如下:(1)string& erase ( size_t pos = 0, size_t n = npos );(2)iterator erase ( iterator position );(3)iterator erase ( iterator first, iterator last );也就是说有三种用法:(
2014-10-10 07:58:48 1719
转载 C++判断字符串中是否有中文
分析一下:问题:用C++判断字符串是否为中文简化:判断字符串是否为中文这个问题本身就有问题.你们谁能说他有本事判断给定的字符串是否为中文?首先 中文是一中编码,而UNICODE是一种格式.编码是要表示实际东西的,而UNICODE是一种传输用的方式;如果说编码是犯人,0001代表某某,那么UNICODE就是犯人带的刑具一个带了刑具的犯人,你咋知道他是那个国家那种级别的
2014-10-09 21:58:40 15448
转载 C++ int,float,double,long表示范围
这里的结果是在32位机上面运行的结果:[cpp] view plaincopy#include #include #include using namespace std; int main() { cout "type: \t\t" "************size************
2014-10-08 20:47:45 4620 1
转载 qsort函数和sort函数
做ACM题的时候,排序是一种经常要用到的操作。如果每次都自己写个冒泡之类的O(n^2)排序,不但程序容易超时,而且浪费宝贵的比赛时间,还很有可能写错。STL里面有个sort函数,可以直接对数组排序,复杂度为n*log2(n)。使用这个函数,需要包含头文件 #include 这个函数可以传两个参数或三个参数。第一个参数是要排序的区间首地址,第二个参数是区间尾地址的下一地址。
2014-10-08 19:44:37 432
转载 C++实现统计从1到n中1出现的次数(另外一种方法)
Problem Consider a function which, for a given whole number n, returns the number of ones required when writing out all numbers between 0 and n. For example, f(13)=6. Notice that f(1)=1. Wha
2014-10-08 16:13:16 2354
转载 C++求从1到n的正整数中1出现的次数
题目:输入一个整数n,求从1到n这n个整数的十进制表示中1出现的次数。例如输入12,从1到12这些整数中包含1 的数字有1,10,11和12,1一共出现了5次。问题描述:给定一个十进制正整数N,写下从1开始,到N的所有整数,然后数一下其中出现的所有"1"的个数。例如:N = 2,写下1,2。这样只出现了1个"1"。N = 12,写下1,2,……,12,这样有5个"1"。
2014-10-08 15:40:41 3950
转载 itoa函数和atoi函数
itoa是广泛应用的非标准C语言扩展函数。由于它不是标准C语言函数,所以不能在所有的编译器中使用。但是,大多数的编译器(如Windows上的)通常在头文件中包含这个函数。1说明编辑功能:将任意类型的数字转换为字符串。在中与之有相反功能的函数是atoi。2用法编辑1char*itoa(intvalue,c
2014-10-08 10:33:03 1174
msk调制与gmsk调制
2014-01-13
matlab仿真qpsk gmsk msk fsk qam ask
2014-01-13
msk与QPSK调制解调
2013-06-03
GMSK与MSK调制解调
2013-06-02
msk 的调制解调
2013-04-24
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人