log以a为底的x 是当0<a<1的时候,a越大,这个图像越靠近y轴吗

函数y=log&a&(x+3)-1(a&0且a不=1)的图像恒过? - 爱问知识人
(window.slotbydup=window.slotbydup || []).push({
id: '2491531',
container: s,
size: '150,90',
display: 'inlay-fix'
函数y=log(x+3)-1(a>0且a不=1)的图像恒过定点A.若点A在mx+ny+1=0上
据对数函数图像和性质,
A点坐标应为(-2,-1),因为它在题中直线上,
故-2m-n+1=0
=(n+2m)/mn
=1/m(1-2m)
=1/[-2(m-1)^2+1/8]
显然,当m=1/4、n=1/2时,所求最小值为
本题用均值不等式或Cauchy不等式更简洁!
y=log&a&(x+3)-1(a&0且a≠1)的图像恒过定点A.
则x+3=1时,y=-1,所以A(-2,-1)
点A在mx+ny+1=0,-2m-n+1=0
2m+n=1,mn&0,m,n同号。
只有m&0,n&0时,1/m+2/n才有最小值.
此时1/m+2/n=(2m+n)/m+(4m+2n)/n
=2+n/m+4m/n+2
=4+(n/m+4m/n)
≥4+2*2=8
1/m+2/n的最小值8.
新春快乐!
您的举报已经提交成功,我们将尽快处理,谢谢!
解:y=a^(x+1)-3恒过定点(-1,-2)(因为y=a^x过定点(0,1))),
代入直线方程得
-m-2n+1=0,即m+2n=1
1/m+2/n...
y'=3x^2-2a。
首先,若函数在(0,1)内有极小值,则a&0。否则,若a≤0,则y'≥0,函数单调递增,没有极小值。
其次,a&0时,y'=...
解:(1/2)a&1&+(1/2²)a&2&+…+(1/2^n)a&n&=2n+5,则
(1/2)a&1&+(1/2²)a&2&+…+[1...
b,a异号时,这两个函数图像没有公共点
若F(X)=A^(-X)与G(X)=A^(X-A)(A>0且A不等于1)的图像关于直线X=1对称,则F(X)=G(2-X)=A^(2-X-A),A=2
大家还关注
<a href="/b/.html" target="_blank" class="trackEventQuestion" trackType="PC_问题详细页" trackAction="跳转" trackDes="PC_大家还关注" title="三角函数 已知0<=α三角函数 已知0<=α<2π,且角α的6...搜狗2015C++工程师笔试题解题分析
搜狗2015C++工程师笔试题解题分析
试卷链接:。
1、假设整数0x 存放在内存地址0x0开始的连续四个字节中 (即地址0x0到 0x3). 那么在以Little Endian字节序存储的memory中,地址0x3的地方存放的字节是:
分析:选D。小端法和大端法。
a)&Little-Endian就是低位字节排放在内存的低地址端,&高位字节排放在内存的高地址端。
b) Big-Endian就是高位字节排放在内存的低地址端,低位字节排放在内存的高地址端。
c) 网络字节序:TCP/IP各层协议将字节序定义为Big-Endian,因此TCP/IP协议中使用的字节序通常称之为网络字节序。
如果是&Little-Endian:0x0-0x3内存分别存放的是:0x78、0x56、0x34、0x12;
如果是&&Big-Endian&:0x0-0x3内存分别存放的是:0x12、0x34、0x56、0x78;&
2、以下代码输出的是__int foo(int x,int y)
if(x&=0||y&=0)
return 3*foo(x-1,y/2);
cout&&foo(3,5)&&答案:27。
3、给定下列程序,那么执行printf(&%\n&,foo(20,13)); 的输出结果是多少?int foo (int x,int y )
if (x<=0││y<=0)
return 1;
return 3*foo(x-6,y/2);
}答案:81。
4、如果x=2014,下面函数的返回&#20540;是()int fun(unsigned int x)
while((x+1))
x=x|(x+1);
}分析:x&(x-1)统计1的个数,x|(x&#43;1)统计0的个数。2014二进制中一共有23个0则返回&#20540;为23。
5、以下代码的输出是()int a[5]={1,2,3,4,5};
int *ptr=(int*)(&a+1);
printf(&%d,%d&,*(a+1),*(ptr-1));分析:数组名的&#20540;是一个指针常量,也就是数组第一个元素的地址。*(a&#43;1)等同于a[1],*(a&#43;1)=2。&a&#43;1指向数组最后一个元素的下一个位置,故*(ptr-1)指向数组的最后一个元素。选B。
6、在linux下64位c程序,请计算输出的三个sizeof分别是()void func(char str_arg[100])
cout&&sizeof(str_arg)&&
int main(int argc,char* argv[])
char str[]=&Hello&;
cout&&sizeof(str)&&
cout&&sizeof(p)&&
func(&test&);
分析:sizeof对数组求长度为数组的真实长度,字符串数组的长度要加上最后的'\0'字符。最后一个:数组作为函数的参数传递时,char
str_arg[100]实际为 char *str_arg,传递的是指向数组首元素的指针 sizeof(char *str_arg)=8(64位)。
7、下面关于迭代器失效的描述哪个是错误的()
所有迭代器不失效
有且仅有被删除的节点的迭代器才失效
当 vector 的容量(不是size)不改变时, 只失效之后的迭代器, 否则全部失效
被删除节点之后的迭代器全部失效
所有迭代器不失效
有且仅有被删除的节点的迭代器才失效
8、函数fun的声明为int fun(int *p[4]),以下哪个变量可以作为fun的合法参数()
分析:可以看出fun函数的形参是一个指针数组,也就是指针指向一个地址,地址中存放的内容也是指针。
A,二维数组,不符合
B,二级指针,也就是指针指向的内容也还是存放指针的,符合
C,二级指针数组,数组的内容是二级指针,不符合
D,数组指针,不符合
9、下面说法正确的是()
分析:A,普通的运算符可以重载,特殊的不能重载,比如 . :: 等;
B,const是常对象,也就是不改变成员变量的&#20540;,而成员函数中只有const函数可以确保不改变成员变量的&#20540;;
C,析构函数一般定义为虚函数,构造函数不能是虚函数;
D,重载只要求函数名相同,参数类型和个数不同,不要求返回&#20540;类型。
10、典型的创建Windows窗口过程的流程为()
A、注册窗口类-&创建窗口-&显示窗口-&更新窗口-&消息循环
B、注册窗口类-&创建窗口-&更新窗口-&显示窗口-&消息循环
C、创建窗口-&注册窗口类-&更新窗口-&显示窗口-&消息循环
D、创建窗口-&注册窗口类-&显示窗口-&更新窗口-&消息循环
分析:在屏幕上显示一个窗口的过程一般有以下步骤,这就是主程序的结构流程:
(1)得到应用程序的句柄(GetModuleHandle)。
(2)注册窗口类(RegisterClassEx)。在注册之前,要先填写RegisterClassEx的参数WNDCLASSEX结构。
(3)建立窗口(CreateWindowEx)。
(4)显示窗口(ShowWindows)。
(5)刷新窗口客户区(UpdateWindow)。
(6)进入无限的消息获取和处理的循环。首先获取消息(GetMessage),如果有消息到达,则将消息分派到回调函数处理(DispatchMessage),如果消息是WM_QUIT,则退出循环。
11、下面哪个API返回的不属于windows内核对象()
A、CreateFile
B、CreateSemaphore
C、CreateDC
D、CeateEvent
答案:C。内核对象主要要用来供系统和应用程序管理系统资源,像进程、线程、文件等。存取符号对象、事件对象、文件对象、作业对象、互斥对象、管道对象、等待计时器对象等都是内核对象。 除了内核对象外,也可以使用其他类型的对象,如菜单、窗口、鼠标光标、刷子和字体等。这些对象属于用户对象或图形设备接口(GDI)对象,而不是内核对象。
12、用户双击鼠标时产生的消息序列,下面正确的是()
分析:答案D。双击即点击左键两下,第一次触发LBUTTONDOWN和LBUTTONUP,第二次点击时触发双击事件LBUTTONDBLCLK(doubleclick),放掉再触发LBUTTONUP。
13、以下关于线程以下描述正确的是()
1).windows线程创建时,默认绑定在1个特定的CPU上
2).可采用SetThreadAffinityMask接口设置线程与某个cpu绑定
3)._beginthreadex比CreateThread创建线程安全是因为使用_beginthreadex会创建一个_tiddata,在调用一些诸如strtok函数时会将需要保护的数据存入_tiddata
4).使用_beginthread创建线程时,线程执行函数必须为_cdecl约束规范,而_beginthreadex指定的线程执行函数必须为_stdcall
分析:1):不正确。windows线程创建时,不会绑定在特定的CPU上,需要手动绑定,或者调用SetThreadAffinityMask接口进行绑定;
&&&&&&&&& &2):正确。参考博客&。
&&&&&&&&& &3):不正确。参考2的链接。欢迎各位纠正。
&&&&&&&&& &4):正确。参考msdn:&
&&&&&&&&&&&&_beginthread&函数可创建在&start_address&开始执行例程的线程。&&start_address&中的例程必须使用&&__cdecl&(用于本机代码)或&&__clrcall&(用于托管代码)调用约定,并且应没有返回&#20540;。
&&&&&&&&&&&&传递给&&_beginthreadex&&&的&&&start_address&&&中的例程必须使用&&&__stdcall&(用于本机代码)或&&&__clrcall&(用于托管代码)调用约定,并且必须返回线程退出代码。
&&&&&&&&& & 所以,通过1,就能选出D。
14、以下哪些线程同步锁可以为递归锁
1.信号量 &2.读写锁 & 3.互斥量 & 4.事件 & 5.临界区(Critical Section)
分析:答案C
互斥锁(&mutexlock&):
最常使用于线程同步的锁;标记用来保证在任一时刻,只能有一个线程访问该对象,同一线程多次加锁操作会造成死锁;临界区和互斥量都可用来实现此锁,通常情况下锁操作失败会将该线程睡眠等待锁释放时被唤醒
自旋锁(spinlock):&
同样用来标记只能有一个线程访问该对象,在同一线程多次加锁操作会造成死锁;使用硬件提供的swap指令或test_and_set指令实现;同互斥锁不同的是在锁操作需要等待的时候并不是睡眠等待唤醒,而是循环检测保持者已经释放了锁,这样做的好处是节省了线程从睡眠状态到唤醒之间内核会产生的消耗,在加锁时间短暂的环境下这点会提高很大效率
读写锁(rwlock):
高级别锁,区分读和写,符合条件时允许多个线程访问对象。处于读锁操作时可以允许其他线程和本线程的读锁, 但不允许写锁, 处于写锁时则任何锁操作都会睡眠等待;常见的操作系统会在写锁等待时屏蔽后续的读锁操作以防写锁被无限孤立而等待,在操作系统不支持情况下可以用引用计数加写优先等待来用互斥锁实现。 读写锁适用于大量读少量写的环境,但由于其特殊的逻辑使得其效率相对普通的互斥锁和自旋锁要慢一个数量级;&#20540;得注意的一点是按POSIX标准&在线程申请读锁并未释放前本线程申请写锁是成功的,但运行后的逻辑结果是无法预测
递归锁(recursivelock):
严&#26684;上讲递归锁只是互斥锁的一个特例,同样只能有一个线程访问该对象,但允许同一个线程在未释放其拥有的锁时反复对该锁进行加锁操作; windows下的临界区默认是支持递归锁的,而linux下的互斥量则需要设置参数PTHREAD_MUTEX_RECURSIVE_NP,默认则是不支持。
15、关于sendmessage和postmessage的区别,下面的说法错误的是()
A:PostMessage只把消息放入队列,不管其他程序是否处理都返回,然后继续执行,这是个异步消息投放函数。
B:SendMessage必须等待其他程序处理消息完了之后才返回,继续执行,这是个同步消息投放函数。
C:当某线程调用sendmessage给别的线程创建的窗口时,发送的消息首先追加到接收线程的发送消息队列,发送线程处于空闲状态,等待接收线程处理完他的消息返回给发送线程的应答队列,等到后发送线程被唤醒取得应答队列的消息 (就是处理完消息的返回&#20540;),继续执行。
D:sendmessage和postmessage都可以给其他线程发送消息。
16、关于WM_COPYDATA消息的处理,下面描述错误的是()
分析:选C。
A:WM_COPYDATA消息的主要目的是允许在进程间传递只读数据。Windows在通过WM_COPYDATA消息传递期间,不提供继承同步方式。
B;该消息只能由SendMessage()来发送,而不能使用PostMessage()。因为系统必须管理用以传递数据的缓冲区的生命期,如果使用了PostMessage(),数据缓冲区会在接收方(线程)有机会处理该数据之前,就被系统清除和回收。
D:可以在消息队列或窗口过程函数中处理该消息
17、常用的windows进入点函数wWinMain共有四个参数,其中不包括以下哪种类型的参数()
B、char * & & & & & & C、PWSTR
D、HINSTANCE
分析:WinMain 函数的原型声明如下:int WINAPI WinMain(
HINSTANCE hInstance , // handle to current instance
HINSTANCE hPrevInstance , // handle to previous instance
LPSTR lpCmdLine , // command line
int nCmdShow // show state
);第一个参数
hInstance 表示该程序当前运行的实例的句柄,这是一个数&#20540;。
第二个参数 hPrevInstance 表示当前实例的前一个实例的句柄。
第三个参数 lpCmdLine 是一个以空终止的字符串,指定传递给应用程序的命令行参数。&
第四个参数 nCmdShow 指定程序的窗口应该如何显示,例如最大化、最小化、隐藏等。
18、下列windows消息中,优先级相对较低的是哪一个()
分析:WM_TIMER消息的优先级最低,所以在有其他消息的情况下,WM_TIMER消息得不到处理
A:WM_MOUSEMOVE消息在鼠标移动时被发送至已获焦点的窗口
B:Windows定时器是一种周期性的消息产生装置,它会每隔一段指定时间发送一次定时消息WM_TIMER。
C:未经输入法而直接送人程序中的字符会响应WM_CHAR消息
D:发送此消息给那个窗口的大小和位置已经被改变时,来调用setwindowpos函数或其它窗口管理函数
总结:Windows以消息驱动的方式,使得线程能够通过处理消息来响应外界。消息的优先级是WM_SENDMESSAGE & WM_POSTMESSAGE & WM_QUIT & WM_INPUT & WM_PAINT & WM_TIMER。
19、最小堆[0,3,2,5,7,4,6,8],在删除堆顶元素0之后,其结果是()
分析:根据堆的删除规则,删除操作只能在堆顶进行,也就是删除0元素。
然后让最后一个节点放在堆顶,做向下调整工作,让剩下的数组依然满足最小堆。
删除0后用8填充0的位置,为[8,3,2,5,7,4,6]
然后8和其子节点3,2比较,结果2最小,将2和8交换,为:[2,3,8,5,7,4,6]
然后8的下标为2,其两个孩子节点下标分别为2*2&#43;1=5,2*2&#43;2=6
也就是4和6两个元素,经比较,4最小,将8与4交换,为[2,3,4,5,7,8,6]
这时候8已经没有孩子节点了,调整完成。答案选C。
20、对一个由A,B,C,D随机组成的序列进行哈弗曼编码,据统计,各个元素的概率分别为:P(A)=0.4,P(B)=0.35,P(C)=0.2,P(D)=0.05,请问该编码的平均期望编码长度为()bits?
分析:首先要建立哈夫曼树,然后计算平均期望编码长度:0.4*1
&#43; 0.35*2 &#43; 0.2*3 &#43; 0.05*3 = 1.85。、
21、设有递归算法如下,int x(int n)
return x(n-2)+x(n-4)+1;
}试问计算x(x(8))时需要计算()次x函数。
x(8)=x(6)&#43;x(4)&#43;1 &递归计算x(8)第一次调用
x(6)=x(4)&#43;x(2)&#43;1& 递归计算x(6)第二次调用
x(4)=&x(2)&#43;x(0)&#43;1&&递归计算x(4)第三次调用
x(4)=&x(2)&#43;x(0)&#43;1&&&递归计算x(4)第四次调用&
之后再调用x()计算黑体部分的结果(5次,加上前面4次,一共9次),最后x(8)返回&#20540;为9
接着计算x(9)
x(9)=x(7)&#43;x(5)&#43;1 &递归计算x(9)第一次调用
x(7)=x(5)&#43;x(3)&#43;1& 递归计算x(7)第二次调用
x(5)=x(3)&#43;x(1)&#43;1&&递归计算x(5)第三次调用
x(5)=x(3)&#43;x(1)&#43;1&&递归计算x(5)第四次调用
之后再调用x()计算黑体部分的结果(5次,加上前面4次,一共9次),最后x(8)返回&#20540;为9
所以总共调用x()的次数是9&#43;9=18。
22、设一组初始记录关键字序列(Q,H,C,Y,P,A,M,S,R,D,F,X),则按字母升序的第一趟冒泡排序结束后的结果是()
分析:第一趟冒泡:从数组第一个元素到最后一个元素扫描,比较相邻的元素,如果后一个元素小于前一个,则交换位置。第一趟结束时,最大元素到达最后一个元素位置。
23、堆排序的空间复杂度是(),堆排序中构建堆的时间复杂度是()。
分析:“空间复杂度”指占内存大小,堆排序每次只对一个元素操作,是就地排序,所用辅助空间O(1),空间复杂度是O(1);在构建堆的过程中,完全二叉树从最下层最右边的非终端结点开始构建,将它与其孩子进行比较和必要的互换,对于每个非终端结点来说,其实最多进行两次比较和互换操作,因此整个构建堆的时间复杂度为O(n)。在正式排序时,第i次取堆顶记录重建堆需要用O(logi)的时间(完全二叉树的某个结点到根结点的距离为?log2i?&#43;1),并且需要取n-1次堆顶记录,因此,重建堆的时间复杂度为O(nlogn)。答案选C。
24、若用一个大小为6的数组来实现循环队列,且当前rear和front的&#20540;分别0和3。当从队列中删除一个元素,再加入两 个元素后,rear和front的&#20540;分别为()
分析:因为出队时,front=front&#43;1/MAXSIZE,rear不变,所以front=4;入队时,rear=rear&#43;1/MAXSIZE,front不变,所以rear=2。答案选A。
25、如下表是用户是否使用某产品的调查结果()&
用户是否使用调查产品
请计算年龄,地区,学历,收入中对用户是否使用调查产品信息增益最大的属性(Log23≈0.63)
分析:信息增益通俗讲就是指区分度。如果对于一个属性,其结果都是等概率出现的,即信息熵为1,信息增益为0,那么这个属性就没有任何区分度,无实际意义。就像本题中年龄一样,年龄高的的人是否接受调查的人都是1/2,年龄低的人是否接受调查的人也分别占1/2,那么年龄属性没有任何实际意义,有没有都一样了。不得不说Shannon发明的这个信息熵太强大了。答案选C。
26、假设某算法的计算时间可用递推关系式T(n)=2T(n/2)&#43;n表示,则该算法的时间复杂度为()
分析:递推即可。
T(n)=2^k*(T(n/(2^k)))&#43;k*n
2^k = n,k = log(n) &&(以2为底)
T(n) = n*T(1)&#43;n*log(n)&= c*n*log(n) &(c为常数)
所以是O(n*logn)。
27、基于统计的分词方法为()
分析:目前的分词方法归纳起来有3 类:
第一类是基于语法和规则的分词法。其基本思想就是在分词的同时进行句法、语义分析, 利用句法信息和语义信息来进行词性标注, 以解决分词歧义现象。因为现有的语法知识、句法规则十分&#31548;统、复杂, 基于语法和规则的分词法所能达到的精确度远远还不能令人满意, 目前这种分词系统还处在试验阶段。
第二类是机械式分词法(即基于词典)。机械分词的原理是将文档中的字符串与词典中的词条进行逐一匹配, 如果词典中找到某个字符串, 则匹配成功, 可以切分, 否则不予切分。基于词典的机械分词法, 实现简单, 实用性强, 但机械分词法的最大的缺点就是词典的完备性不能得到保证。据统计, 用一个含有70 000 个词的词典去切分含有15
000 个词的语料库, 仍然有30% 以上的词条没有被分出来, 也就是说有4500 个词没有在词典中登录。
第三类是基于统计的方法。基于统计的分词法的基本原理是根据字符串在语料库中出现的统计频率来决定其是否构成词。词是字的组合, 相邻的字同时出现的次数越多, 就越有可能构成一个词。因此字与字相邻共现的频率或概率能够较好的反映它们成为词的可信度。
最大匹配是指以词典为依据,取词典中最长单词为第一个次取字数量的扫描串,在词典中进行扫描,这是基于词典分词的方法
1).正向最大匹配法&
2).逆向最大匹配法
3).最少切分法:使每一句中切出的词数最小,这也是基于词典分词的方法
条件随机场是一个基于统计的序列标记和分割的方法,属于基于统计的分词方法范畴。它定义了整个标签序列的联合概率,各状态是非独立的,彼此之间可以交互,因此可以更好地模拟现实世界的数据。答案选D。
28、下列哪个不属于CRF模型对于HMM和MEMM模型的优势()
分析:隐马尔可夫模型(Hidden Markov Model,HMM),最大熵马尔可夫模型(Maximum Entropy Markov Model,MEMM)以及条件随机场(Conditional Random Field,CRF)是序列标注中最常用也是最基本的三个模型。
HMM模型是对转移概率和表现概率直接建模,统计共现概率。
MEMM模型是对转移概率和表现概率建立联合概率,统计时统计的是条件概率,但MEMM容易陷入局部最优,是因为MEMM只在局部做归一化。
RF模型中,统计了全局概率,在 做归一化时,考虑了数据在全局的分布,而不是仅仅在局部归一化,这样就解决了MEMM中的标记偏置(label bias)的问题。
CRF没有HMM那样严&#26684;的独立性假设条件,因而可以容纳任意的上下文信息。特征设计灵活。(与ME一样) ————与HMM比较
同时,由于CRF计算全局最优输出节点的条件概率,它还克服了最大熵马尔可夫模型标记偏置(Label-bias)的缺点。 --————与MEMM比较
CRF是在给定需要标记的观察序列的条件下,计算整个标记序列的联合概率分布,而不是在给定当前状态条件下,定义下一个状态的状态分布。
CRF需要训练的参数更多,与MEMM和HMM相比,它存在训练代价大、复杂度高的缺点。答案选B。
29、假设一个完整的扑克牌有52张牌,2黑色(黑葵和梅花)和2红色(方块和红心)。如果给你一副完整的牌,和半副牌(1红色和1黑色),则两种情况下抽两张&牌都是红色的概率是多少()
分析:第一种情况
26/52 * 25/51 =25/102,第二种情况 13/26 * 12/25=12/50。
30、在二分类问题中,当测试集的正例和负例数量不均衡时,以下评价方案哪个是相对不合理的()(假设
precision=TP/(TP&#43;FP),recall=TP/(TP&#43;FN)。)
题目提到测试集正例和负例数量不均衡,那么假设正例数量很少占10%,负例数量占大部分90%。
而且算法能正确识别所有负例,但正例只有一半能正确判别。
那么TP=0.05×all, TN=0.9×all,Accuracy=95%。
虽然Accuracy很高,但正例precision只有50%
31、下面关于ID3算法中说法错误的是()
分析:ID3算法(Iterative Dichotomiser 3 迭代二叉树3代)是一个由发明的用于的。可以归纳为以下几点:(1)使用所有没有使用的属性并计算与之相关的样本熵&#20540;;(2)选取其中熵&#20540;最小的属性;(3)生成包含该属性的节点。D3算法对数据的要求:(1)
所有属性必须为离散量;(2) 所有的训练例的所有属性必须有一个明确的&#20540;;(3) 相同的因素必须得到相同的结论且训练例必须唯一。另外ID3
算法生成的决策树是一棵多叉树,分支的数量取决于分裂属性有多少 个不同的取&#20540;。 答案选D。
32、圆内接三角形是锐角三角形概率是多少()
分析:三角形的三点在圆上的位置是等概率的。这种任意位置组成的三角形中,最大的那个角必定大于等于60度,因此满是三角形是锐角的变化范围是60-90度,钝角的范围是90-180度,(90-60)/(180-60)=1/4。
另一种分析方法:三角形一个点A是固定的,圆心为O,连接AO,并延长交圆于D,AD为直径,分圆为两半三角形另两顶点为BC,当B、C在AD一边时ABC非锐角三角形,这种可能性有1/2当B、C在AD两边时ABC可能为锐角三角形,可能非锐角三角形,当BC与AO不相交时为锐角三角形,相交时非锐角三角形,可能性各一半,即均为1/4锐角三角形的概率为1/4。
33、六个人排成一排,甲与乙不相邻,且甲与丙不相邻的不同排法数是多少()
分析:可以分为两种情况。
(1)、甲在两侧,那么乙丙只能在与甲隔一个位置的其他4个位置摆放,即从4个位置随机抽2个位置放乙丙(要考虑顺序),其他3个位置全排列,公式为2 * C(4, 2) * A(2, 2) * A(3, 3)
(2)、甲在中间,那么乙丙只能在与甲左右各隔一个位置的3个位置摆放,即从3个位置随机抽2个位置放乙丙(要考虑顺序),其他3个位置全排列,公式为4 * C(3, 2) * A(2, 2) * A(3, 3)
& & & &&由加法原理得它们和为288。
34、在其他条件不变的前提下,以下哪种做法容易引起机器学习中的过拟合问题()
分析:避免过拟合的方法:正则化方法,强制减少参数,增大训练数据集。减少神经网络隐藏层节点数,即减少了输入--隐层,隐层--输出 之间的连接矩阵,即权重和偏置,相当于降低模型复杂度,易引起过拟合。答案选D。
35、计算一个任意三角形的面积,S=√(p(p-a)(p-b)(p-c)),p=(a&#43;b&#43;c)/2,以下等价类测试用例中,不属于无效等价类的是()
分析:海伦公式求三角形面积,无效等价类意思就是无法构成三角形的。
36、[不定项选择]下列排序算法的常规实现中,哪些空间复杂度是O(1)
分析:冒泡排序,选择排序,堆排序的空间复杂度为O(1),因为需要一个临时变量来交换元素位置,(另外遍历序列时自然少不了用一个变量来做索引).快速排序空间复杂度为logn(因为递归调用了)
,归并排序空间复杂是O(n),需要一个大小为n的临时数组。答案选ABE。
我的热门文章
即使是一小步也想与你分享我理解的信息论——自信息、熵、互信息
&&&信息是关于事物的运动状态和规律的认识,它可以脱离具体的事物而被摄取、传输、存贮、处理和变换。
信息论,就是用数理统计方法研究信息的基本性质以及度量方法,研究最佳解决信息的摄取、传输、存贮、处理和变换的一般规律的科学。它的成果将为人们广泛而有效地利用信息提供基本的技术方法和必要的理论基础。
  信息论的研究范围分成三种不同类型:
  (1)狭义信息论是一门应用数理统计方法来研究信息处理和信息传递的科学。它研究存在于通讯和控制系统中普遍存在着的信息传递的共同规律,以及如何提高各信息传输系统的有效性和可靠性的一门通讯理论。
  (2)一般信息论主要是研究通讯问题,但还包括噪声理论、信号滤波与预测、调制与信息处理等问题。
(3)广义信息论不仅包括狭义信息论和一般信息论的问题,而且还包括所有与信息有关的领域,如心理学、语言学、神经心理学、语义学等。
狭义信息,是针对通信意义上的信息而言的。1948年,美国数学家C. E.
Shannon发表的《通信的数学理论》。差不多同一时候,美国数学家N.
Wiener发表了《时间序列的内插、外推和平滑化》以及专著《控制论》。他们分别解决了狭义信息的度量问题,并且得到了相同的结果。
Shannon的论文还给出了信息传输问题的一系列重要成果,建立了比较完整而系统的信息理论,这就是Shannon信息论,也叫狭义信息论。Shannon理论的建立,在很大程度上澄清了通信的基本问题。它以概率论为工具,刻画了信源产生信息的数学模型,导出了度量概率信息的数学公式;同时,它利用概率论的方法,描述了信道传输信息的过程,给出了表征信道传输能力的容量公式;此外,它还建立了一组信息传输的编码定理,论证了信息传输的一些基本界限。Shannon的理论是通信科学发展史上的一个转折点,它使通信问题的研究从经验转变为科学。
作为运动状态表现的广义信息既具有一定的形式又具有一定的内容。在原则上,数学可以精确地刻画形式。但是,如何从数学上定量地刻画内容,至今仍是一个巨大的难题。一般的情形是用数学来表达形式,用语言来描述内容。但是,对于通信领域,通信只不过是信息的传输,因此可以把它看作是“在通信的一端精确地或近似地复现另一端所挑选的消息”,“至于通信的语义方面的问题,与工程方面的问题是没有关系的”。由于通信的任务只是单纯地复制消息,并不需要对信息的语义作任何处理和判断。只要在通信接收端把发送端发出的消息从形式上复制出来,也就同时复现了它的语义内容。
信息论的主要内容用语言来阐述。 一种简洁的语言(以英语为例)通常有两个重要特点: 首先,最常用的词(比如"a", "the",
"I")应该比不太常用的词(比如"benefit", "generation",
"mediocre")要短一些;其次,如果句子的某一部分被漏听或者由于噪声干扰(比如一辆车辆疾驰而过)而被误听,听者应该仍然可以抓住句子的大概意思。而如果把电子通信系统比作一种语言的话,这种健壮性(robustness)是不可或缺的。将健壮性引入通信是通过信道编码完成的。信源编码和信道编码是信息论的基本研究课题。
&&自信息量I(ai)表示一个消息ai出现后所带来的信息量,用其概率的负对数来表示,即I(ai)=-log2p(ai),因此I(ai)是非负值,并且是概率p(ai)的单调递减函数。
  在信息论中,熵表示的是不确定性的量度。信息论的创始人香农在其著作《通信的数学理论》中提出了建立在概率统计模型上的信息度量。他把信息定义为“用来消除不确定性的东西”。
Chaos(混沌),无序.物理学:除非施加能量,否则熵不会降低 举例:把房间弄乱很容易,整理干净不容易
是不确定性(Uncertainty)的衡量, 不确定性越高,熵越高,我们从一次实验中得到的信息量越大.
熵也可以被视为描述一个随机变量的不确定性的数量。一个随机变量的熵越大,它的不确定性越大。那么,正确估计其值的可能性就越小。越不确定的随机变量越需要大的信息量用以确定其值。
  熵在信息论中的定义如下:
  如果有一个系统S内存在多个事件S = {E1,...,En}, 每个事件的机率分布 P = {p1, ...,
pn},则每个事件本身的讯息为
  Ie = & log2pi
  (对数以2为底,单位是位元(bit))
  Ie = & lnpi
  (对数以e为底,单位是纳特/nats)
  如英语有26个字母,假如每个字母在文章中出现次数平均的话,每个字母的讯息量为
  I_e = -\log_2 {1\over 26} = 4.7
  ;而汉字常用的有2500个,假如每个汉字在文章中出现次数平均的话,每个汉字的信息量为
  I_e = -\log_2 {1\over 2500} = 11.3
  整个系统的平均消息量为
  H_s = \sum_{i=1}^n p_i I_e = -\sum_{i=1}^n p_i \log_2 p_i
  这个平均消息量就是消息熵。因为和热力学中描述热力学熵的玻耳兹曼公式形式一样,所以也称为“熵”。
  如果两个系统具有同样大的消息量,如一篇用不同文字写的同一文章,由于是所有元素消息量的加和,那么中文文章应用的汉字就比英文文章使用的字母要少。所以汉字印刷的文章要比其他应用总体数量少的字母印刷的文章要短。即使一个汉字占用两个字母的空间,汉字印刷的文章也要比英文字母印刷的用纸少。
  实际上每个字母和每个汉字在文章中出现的次数并不平均,因此实际数值并不如同上述,但上述计算是一个总体概念。使用书写单元越多的文字,每个单元所包含的讯息量越大。
  I(A)度量事件A发生所提供的信息量,称之为事件A的自信息,P(A)为事件A发生的概率。如果一个随机试验有N个可能的结果或一个随机消息有N个可能值,若它们出现的概率分别为p1,p2,…,pN,则这些事件的自信息的和:[H=-SUM(pi*log(pi)),i=1,2…N]称为熵。
熵H(X)=-Σx∈Ωp(x)logxp(x)
& 假设PX(x)是随机变量X的分布
& 基本输出字母表是Ω
& 单位:bits
& 熵是X的平均信息量,是自信息量的期望
E(X)=Σx∈Ω p(x) x
I(X)=-logp(x),取2为底,I(X)=-log2p(x)
E(I(X)=E(-log2p(x))= Σx∈Ω p(x)(-log2p(x)) = H(X)
H(X)=H(p)=Hp(X)=HX(p)=H(pX)
& 掷均匀硬币,Ω={H,T}
p(H)=.5, p(T)=.5
H(p)=-0.5log20.5 (-0.5log20.5)=1
& 32面的均匀股子,掷股子
H(p)=-32((1/32)log2(1/32))=5
& 事实上,掷的次数21=2, 25=32(perplexity)
& 掷不均匀硬币
&p(H)=0.2, p(T)=0.8, H(p)=0.722(不确定性更大)
p(H)=0.01, p(T)=0.99, H(p)=0.081
什么时候H(p)=0?
& 试验结果事先已经知道
& 即:&x∈Ω, p(x)=1; &y∈Ω, p(y)=0 if y≠x
& 熵有没有上限?
& 没有一般的上限
& 对于|Ω|=n,H(p)≤-log2n
& 均衡分布的熵是最大的
& 等概率分布
& 2个输出的等概率分布,H(p)=1bit
& 32个输出的等概率分布,H(p)=5bits
& 43亿输出的等概率分布,H(p)=32bits
& 非等概率分布
& 32个输出,2个0.5,其余为0,H(p)=1bit
& 怎样比较具有不同数量输出的“熵”?困惑度(perplexity)
困惑度(perplexity)即混乱度
G(p)=2的H(p)次方,在NLP中,如果词表中的词具有统一的分布概率,则最难预测,熵最大,混乱度最高
反之,分布越不均衡,熵越小,混乱度越小
条件熵给定随机变量X的情况下,随机变量Y的条件熵定义为:
H(Y|X)=Σx∈Ωp(x)H(Y|X=x)
&& = Σx∈Ωp(x)(-Σ
y∈Ψp(y|x)log2p(y|x))
&& =-Σx∈Ω Σ
y∈Ψp(y|x)p(x)log2p(y|x)
&& = -Σx∈Ω Σ
y∈Ψp(x,y)log2p(y|x)
p(x,y)是加权,权值是没有条件的
联合熵(joint entropy)
如果X, Y 是一对离散型随机变量X, Y ~ p(x, y),X, Y 的联合熵H(X, Y) 为:
(X,Y)被视为一个事件
H(X,Y)=-Σx∈Ω Σ y∈Ψp(x,y)log2p(x,y)
联合熵实际上就是描述一对随机变量平均所需要的信息量
联合熵(joint entropy)
如果X, Y 是一对离散型随机变量X, Y ~ p(x, y),X, Y 的联合熵H(X, Y) 为:
(X,Y)被视为一个事件
H(X,Y)=-Σx∈Ω Σ y∈Ψp(x,y)log2p(x,y)
联合熵实际上就是描述一对随机变量平均所需要的信息量
熵是非负的
Chain Rule
H(X,Y)=H(Y|X) H(X)
H(X,Y)=H(X|Y) H(Y)
H(X,Y)≤H(X) H(Y),X和Y独立时相等
H(Y|X)≤H(Y),条件熵比熵小
互信息(Mutual Information)
如果( X, Y ) ~ p(x, y),X, Y 之间的互信息I(X; Y) 为:I (X; Y) = H(X) &H( X | Y
推导为:I(x,y)=log2p(x,y)/(p(x)p(y))
互信息I (X; Y) 是在知道了Y 的值后X 的不确定性的减少量。即,Y 的值透露了多少关于X 的信息量。
& 比如计算两个词的搭配
I(伟大,祖国)=log2p(伟大,祖国)/(p(伟大)p(祖国))
& 此值较高,说明“伟大”和“祖国”是一个比较强的搭配
I(的,祖国)=log2p(的,祖国)/(p(的)p(祖国))
& 此值较低,因为p(的)太高,“的”和“祖国”不是一个稳定的搭配
互信息性质
I(x,y)&&0:x和y关联强度大
I(x,y)=0:x和y无关
I(x,y)&&0:x和y具有互补的分布
由于H(X, X) = 0, 所以,
H(X) = H(X) &H(X|X) = I(X; X)
这一方面说明了为什么熵又称自信息,另一方面说明了两个完全相互依赖的变量之间的互信息并不是一个常量,而是取决于它们的熵。
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。}

我要回帖

更多关于 y log3x图像 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信