• 博客园logo
  • 会员
  • 周边
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
 






陌生花开

 
 

Powered by 博客园
博客园 | 首页 | 新随笔 | 联系 | 订阅 订阅 | 管理

随笔分类 -  算法面试

 
C语言const与define的使用
摘要:const是一个C语言的关键字,它限定一个变量不允许被改变。使用const在一定程度上可以提高程序的健壮性,另外,在观看别人代码的时候,清晰理解const所起的作用,对理解对方的程序也有一些帮助。 虽然这听起来很简单,但实际上,const的使用也是c语言中一个比较微妙的地方,微妙在何处呢?请看下面... 阅读全文
posted @ 2014-06-04 09:05 陌生花开 阅读(2181) 评论(0) 推荐(0)
atoi()函数
摘要:atoi()函数的功能:将字符串转换成整型数;atoi()会扫描参数nptr字符串,跳过前面的空格字符,直到遇上数字或正负号才开始做转换,同时要考虑转换数据的大小,不应该溢出(int)。而再遇到非数字时则直接返回。当字符是('\0')时才结束转化,并将结果返回(返回转换后的整型数)。#include#include #includeint atoi(char *str){long long result=0;bool IsSign = false; //如果是正数则是false,否则就为trueassert(str != NULL );//去掉空格while(*str == & 阅读全文
posted @ 2014-02-26 22:12 陌生花开 阅读(341) 评论(0) 推荐(0)
两种不同随机算法设计理念
摘要:随机算法在程序设计里的使用频度就不用我说了。一般我们用到的随机算法 都是伪随机算法,什么叫伪随机算法呢?伪随机算法意思是假如知道第一个随机种子和随机算法的话就可以推算出下一个随机数。通常我们程序里都是通过当前时间 作为随机函数的第一个随机种子,然后将随机函数返回的值作为下一个种子,随机函数是一个公用函数,每个用户的请求都会触发一个新的随机种子,所以说是随机 的。很多公司都有自己的一套随机算法,下面看一下一位前辈的总结。 /********************************************************************参考:http://www.cppbl 阅读全文
posted @ 2014-02-22 10:36 陌生花开 阅读(349) 评论(0) 推荐(0)
lib 和 dll 的区别、生成以及使用详解
摘要:首先介绍一下静态库(静态链接库)、动态库(动态链接库)的概念,首先两者都是代码共享的方式。静态库:在链接步骤中,连接器将从库文件取得所需的代码,复制到生成的可执行文件中,这种库称为静态库,其特点是可执行文件中包含了库代码的一份完整拷贝;缺点就是被多次使用就会有多份冗余拷贝。即静态库中的指令都全部被直接包含在最终生成的 EXE 文件中了。在vs中新建生成静态库的工程,编译生成成功后,只产生一个.lib文件动态库:动态链接库是一个包含可由多个程序同时使用的代码和数据的库,DLL不是可执行文件。动态链接提供了一种方法,使进程可以调用不属于其可执行代码的函数。函数的可执行代码位于一个 DLL 中,该 阅读全文
posted @ 2014-02-18 21:19 陌生花开 阅读(283) 评论(0) 推荐(0)
回文拓展
摘要:转载于:http://www.ituring.com.cn/article/58558/*回文分割原题对一个字符串按照回文进行分割,例如aba|b|bbabb|a|b|aba就是字符串ababbbabbababa的一个回文分割,每一个字串都是一个回文。请找到可以分割的最少的字串数。例如:1. ababbbabbababa最少4个字符串,分割三次:a|babbbab|b|ababa2. 如果字符串整体是回文,则需要0次分割,最少1个字符串*//*思想:先不要理会最少分割,从对字符串进行回文分割入手,对于回文字符串的判断是不可避免的。可以从字符串的第一个开始,找到满足回文的字串。假设str[0.. 阅读全文
posted @ 2013-12-29 10:32 陌生花开 阅读(219) 评论(0) 推荐(0)
Google面试:蓄水池抽样(Reservoir Sampling)问题分析
摘要:这几天在网上看到一道google的面试,觉得很有意思。题目:要求从N个元素中随机的抽取k个元素,其中N无法确定。这里的核心就是随机的抽取,由于N无法确定,数据只能读取一次,所以问题就转换为了在遍历一次数组的情况下随机的抽取k个元素。网上找到的证明,用数学归纳法证的:http://hi.baidu.com/jrckkyy/blog/item/2562320a70edee27b0351d56.html 写道先选中前k个,从第k+1个元素到最后一个元素为止,以1/i(i = k+1,k+2,...,N)的概率选中第i个元素,并且随机替代掉一个原先选中的元素,这样一直遍历完所有的元素之后,得到k个元素 阅读全文
posted @ 2013-12-28 22:51 陌生花开 阅读(563) 评论(0) 推荐(0)