C++
aganlengzi
无无
展开
-
简单四则元算的一种递归求解
问题描述: 输入一个只包含个位数字的简单四则运算表达式字符串,计算该表达式的值注: 1、表达式只含 +, -, *, / 四则运算符,不含括号2、表达式数值只包含个位整数(0-9),且不会出现0作为除数的情况3、要考虑加减乘除按通常四则运算规定的计算优先级4、除法用整数除法,即仅保留除法运算结果的整数部分。比如8/3=2。输入表达式保证无0作为除数情况发生5、输入字符串一定是符原创 2013-08-11 21:46:26 · 874 阅读 · 0 评论 -
方格连续置1面积最大值
为了进行城市规划,需要计算居民区的住宅数目,该居民区的俯视图已经规划好,并分为n*m个网格,如果某个网格具有屋顶的一部分,则向其赋值1;如果是空地,则赋值0;由值为1的相邻网格单元组成的簇认定为一个单独住宅,对角放置的值为1的网格则不被认为是同一住宅或屋顶。函数countHomes的输入包括一个二维数组grid及其维度n和m;其中n和m分别表示二维数组grid的行和列,该函数应该返回一个表示住宅数总原创 2016-09-20 22:01:53 · 562 阅读 · 0 评论 -
微软2016校园招聘4月在线笔试2-403 Forbidden
时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 Little Hi runs a web server. Sometimes he has to deny access from a certain set of malicious IP addresses while his friends are still allow to access his serv原创 2016-04-06 22:25:59 · 1303 阅读 · 0 评论 -
排序:快速排序和归并排序
快速排序包括: 快速排序递归实现 快速排序非递归实现 快速排序一次划分Partition(基于两边指针向中间方法) 快速排序一次划分Partition(基于同向指针向一边方法) Partition的应用(最小的k个数,第k大的数,保持相对位置的分类) 使用三指针进行分类(荷兰国旗问题)利用额外数组空间的Merge函数 利用原地数组空间的Merge函数 递归方式实现原创 2016-03-24 21:52:59 · 540 阅读 · 0 评论 -
微软2016校园招聘4月在线笔试1-Font Size
时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 Steven loves reading book on his phone. The book he reads now consists of N paragraphs and the i-th paragraph contains ai characters.Steven wants to make the原创 2016-04-06 22:21:56 · 701 阅读 · 0 评论 -
算法:最长回文子串长度
动态规划:最长回文子串:连续+回文 公式 p[i,j] = 1)if(str[i] == str[j]) p[i][j] = 2+p[i+1][j-1] 2)if(str[i]!=str[j]) p[i][j] = max(p[i][j-1], p[i+1][j]) p[i][i] = 1;需要注意的是,在求解的时候计算的长度由短到长,否则在公式中依赖较短的长度的值不可得会造成错误。/原创 2016-04-04 10:24:26 · 616 阅读 · 0 评论 -
C Runtime C运行时
C运行时主要包括以下几个部分:1)引导程序(main)的入口函数和退出函数以及其依赖的各种函数2)C的标准函数的实现3)I/O功能的封装和实现4)堆的封装和实现5)C语言的特殊功能的实现6)调试功能7)其他运行时(Runtime)是平台相关的,这里的平台指的是操作系统它可以被理解成是C语言程序和不同操作系统平台的抽象层原创 2015-03-07 20:45:16 · 1023 阅读 · 0 评论 -
Linux内核源码学习之 数据结构
本篇记录在学习Linux内核源码过程中对一些知道但不熟悉不会用的数据结构进行记录。union是在学习进程复制函数do_fork中遇到的: union thread_union { struct thread_info thread_info; unsigned long stack[THREAD_SIZE/sizeof(long)];原创 2014-09-26 21:00:16 · 1375 阅读 · 0 评论 -
一个系统调用加钩子函数的实现过程
以上完成的是Android层利用系统调用向kernel层传递参数值的方法如果想利用这一整套框架进行kernel层向Android传值(返回值传递)只需修改系统调用的实现+onframe函数的实现和具体在onframe函数中调用的内核中提供的函数接口就可以了。就是不停return值。原创 2014-03-26 13:17:37 · 1684 阅读 · 0 评论 -
OpenGL数据类型及对应C数据类型
原创 2014-07-21 21:07:43 · 1284 阅读 · 0 评论 -
简单理解一道关于#ifndef 和extern "C"的题
extern "C"的主要作用就是为了能够正确实现C++代码调用其他C语言代码。加上extern "C"后,会指示编译器这部分代码按C语言的进行编译,而不是C++的。由于C++支持函数重载,因此编译器编译函数的过程中会将函数的参数类型也加到编译后的代码中,而不仅仅是函数名;而C语言并不支持函数重载,因此编译C语言代码的函数时不会带上函数的参数类型,一般之包括函数名。 #ifnde原创 2014-03-10 13:56:04 · 1344 阅读 · 0 评论 -
关于EXPORT_SYMBOL
EXPORT_SYMBOL标签内定义的函数对全部内核代码公开,不用修改内核代码就可以在您的内核模块中直接调用。If we want export the symbol in a module, just use the EXPORT_SYMBOL(xxxx) in the C or H file.And compile the module by adding the compile flag原创 2014-03-13 18:14:04 · 983 阅读 · 0 评论 -
extern的3种常见用法:
extern置于变量或者函数前,表明变量或者函数的定义(实现)在别的文件中,提示编译器遇到此变量和函数时在其他模块中寻找其定义。另外,extern也可用来进行链接指定。extern 变量 注意这里的变量的类型要完全的匹配,编译器会严格检查这里两边的类型。extern “C” C++语言在编译的时候为了解决函数的多态问题,会将函数名和参数联合起来生成一个中间的函数名称,而C语原创 2014-03-13 11:38:58 · 1090 阅读 · 0 评论 -
Static作用小结
1)所有全局变量在全局都是可见的,在一个源文件中定义的全局变量在另一个文件中都是可见的,可用extern声明在别处。所有变量或者函数声明前加上static作用是隐藏,相当于这个变量或者函数只在本文件中使用。对其他的源文件都进行隐藏。2)全局变量和static变量都存储在静态存储区,静态存储区的变量只是在程序开始运行的时候初始化一次,如果没有指定初始化的值,默认初始化为0(无论什原创 2014-03-13 13:40:50 · 695 阅读 · 0 评论 -
从C源代码到可执行文件的总体过程框架
出处:http://blog.csdn.net/gabriel1026/article/details/6321701 使用gcc进行编译c语言文件很简单: gabriel@gabriel-laptop:~$ gcc hello.c -o hello 但是事实上,这个过程可分为4步,分别是预处理(Prepressing),编译(Compilation)转载 2014-03-08 10:40:47 · 1326 阅读 · 0 评论 -
【基础知识思考整理】函数指针有什么用?
函数指针有什么用? 最基本的是下面说的几个吧,还有一些次要的比如代码风格等等,qsort的比较函数(实际和下面的3)比较类似): Function pointers can be useful when you want to create callback mechanism, and need to pass address of an function to another functio原创 2016-09-23 18:43:51 · 471 阅读 · 0 评论