面试题
iefswang
Just for memory
展开
-
字符串反转
解法一:第一次看到这题目,想到最简单、最直觉的解法就是:遍历字符串,将第一个字符和最后一个交换,第二个和倒数第二个交换,依次循环,即可,于是有了第一个解法:char* strrev1(constchar* str) { int len = strlen(str); char* tmp =new char[len + 1]; strcpy转载 2012-05-18 22:25:05 · 865 阅读 · 0 评论 -
Samsung的ARM处理器iROM启动模式介绍
最近在使用三星S3C2416这个处理器,需要在EBOOT上实现SD卡文件系统,并从SD卡中烧写wince系统,与S3C2416的从SD卡启动不同。我用的BSP是SMDK2416_WinCE50_PM_REL_0.01_080611的,Bootloader文件夹中包含了三个文件夹:Eboot.Whimory、NBL1.LSB、NBL2,先前不太明白这三个Boot到底有什么用,于是从网上找到了下面一篇转载 2014-11-15 20:59:16 · 624 阅读 · 0 评论 -
Android的5个进程等级
1、foreground process 正处于activity resume状态 正处于bound服务交互的状态 正处于服务在前台运行的状态(StartForeGround()被调用) Service生命周期正在被执行(onCreate(),onStart(),onDestroy()) BroadcastReceiver正在执行onReceive转载 2014-10-09 16:47:52 · 3992 阅读 · 0 评论 -
strcpy和memcpy的区别
strcpy和memcpy都是标准C库函数,它们有下面的特点。strcpy提供了字符串的复制。即strcpy只用于字符串复制,并且它不仅复制字符串内容之外,还会复制字符串的结束符。已知strcpy函数的原型是:char* strcpy(char* dest, const char* src);memcpy提供了一般内存的复制。即memcpy对于需要复制的内容没有限制,因此用途更广。转载 2014-03-30 08:01:32 · 598 阅读 · 0 评论 -
遇到的面试中的编程题总结
思路:(1)常规解法;【不好】(2)两个指针,一个指针是另一个指针移动速度的两倍,当快的指针指向链表的尾部时,慢的指针就指向了链表的中间元素。同理,可以求出单链表的任意倍数的位置,并且只需要扫描一遍单链表。如求指向单链表1/3,1/4,1/5等位置的元素。原创 2013-10-13 08:33:15 · 680 阅读 · 0 评论 -
嵌入式面试题的一些答案
嵌入式面试题这部分是ANSI C的一些问题,题目的前提是必须都答对,看似很变态,但是细想一下,这些都是最基础的,虽然我们在使用他们的时候会犯这样那样的错误,但是最终目的是不犯错误,不是么,那么好,从最基础的开始。1、 如何在C中初始化一个字符数组。这个问题看似很简单,但是我们要将最简单的问题用最严谨的态度来对待。关键的地方:初始化、字符型、数组。最简单的方法是char array[转载 2013-09-07 20:58:52 · 1429 阅读 · 0 评论 -
几个常见笔试问题的总结
一、约瑟夫环问题约瑟夫环问题(Josephus)用户输入M,N值,从1至N开始顺序循环数数,每数到M输出该数值,直至全部输出。写出C程序。问题描述1N个人按顺时针围成一个圈,从1到N,然后报数,报到M的人就出去,然后剩余的人仍然围成一个圈,从出局的人下一个人开始重新报数,到M的人出局,如此循环。【解法1】建立一个有N个元素的循环链表,然后从链表表头遍历并原创 2013-09-01 20:20:14 · 704 阅读 · 0 评论 -
嵌入式面试题
一、ANSI C/C++方面的知识一.1、简答题。下面的题目必须全部答对才给分(20分):1、 如何在C中初始化一个字符数组。2、 如何在C中为一个数组分配空间。3、 如何初始化一个指针数组。4、 如何定义一个有10个元素的整数型指针数组。5、 s[10]的另外一种表达方式是什么。6、 GCC3.2.2版本中支持哪几种编程语言。7、 要使用CHAR_BIT需要包含哪个头转载 2013-09-07 16:41:34 · 1832 阅读 · 0 评论 -
C变长参数问题--如printf
在中定义了相关处理变长参数的宏va_start,va_arg,va_end。typedef char * va_list;#define _INTSIZEOF(n) ( (sizeof(n) + sizeof(int) - 1) & ~(sizeof(int) - 1) ) /*整数边界对齐*/#define va_start(ap,v) ( ap = (va_原创 2013-09-07 13:44:27 · 1085 阅读 · 0 评论 -
华为面试-总结
1.判断回文序列#include #include #include #define N 100int main(){char inchar[N];int num[N];int i=0;int j=0;int len=0;scanf("%s",inchar);len = strlen(inchar);printf("len:%原创 2013-08-18 12:09:33 · 945 阅读 · 0 评论 -
数组中有一个数字出现的次数超过了数组长度的一半,找出这个数
这个方法借用了别人的思路。 在这里我做一下简单的分析。 这个算法的时间复杂度是O(n),另外用了两个辅助变量。 k用于临时存储数组中的数据,j用于存储某个数出现的次数。 开始时k存储数组中的第一个数,j为0,如果数组出现的数于k相等,则j加1,否则就减1,如果j为0,就把当前数组中的数赋给k 因为指定的数出现的次数大于数组长度的一半,所有转载 2012-05-18 21:38:39 · 3145 阅读 · 0 评论 -
各种总线知识总结汇总
1. AHB APBAHB采用主机/冲击原创 2014-11-15 21:49:08 · 2264 阅读 · 0 评论