数据结构与算法 嵌入式软件 面经 笔试题

5. 数据 结构与 算法 (17道) 

5.1  数组与 链表 的区别?
(1)数组的元素个数在定义时就必须确定,且元素的类型必须一致;而 链表 的元素个数自由,且元素内可以有不同类型的  数据 。 
(2)数组的元素在内存中是按顺序存储的,而 链表 的元素是随机存储的。 
(3)要访问数组的元素可以按下标索引来访问,速度比较快;如果对它进行插入/删除操作的话,就得移动很多元素,所以对数组进行插入/删除操作效率很低。由于 链表 是随机存储的,如果要访问  链表 中的某个元素的话,那就得从 链表 的头逐个遍历,直到找到所需要的元素为止,所以  链表 的随机访问的效率就比数组要低; 链表 在插入/删除操作上有很高的效率(相对数组)。一句话总结就是:数组的访问效率高,而  链表 的插入/删除效率高。 

5.2 a = b * 2;  a = b / 4;  a = b % 8;  a = b / 8 * 8 + b % 4 ;  a = b * 15; 

效率最高的 算法 

答案:

a = b * 2

a = b << 1;

a = b / 4

a = b >> 2;

a = b % 8

a = b & 7;  // 7 =  0b111

a = b / 8 * 8 + b % 4

a = ((b >> 3) << 3) + (b & 3);  // 3 = 0b11

a = b * 15

a = (b << 4) - b

解读:*、/、%分别可以用<<、>>、&来实现,效率更高。 


5.3 C  语言程序代码优化方法
(1)选择合适的 数据 结构与  算法 ; 
(2)使用尽量小的 数据 类型; 
(3)使用自加、自减指令; 
(4)用移位实现乘除法运算; 
(5)求余运算用&(如a=a%8改为a=a&7); 
(6)平方运算用*(如a=pow(a,2.0)改为a=a*a); 
(7)延时函数的自加改为自减; 
(8)switch语句中根据发生频率来进行case排序 ; 
(9)减少运算的强度。 

5.4  时间换空间、空间换时间的例子?
(1)时间换空间:冒泡 排序 。 
(2)空间换时间:快速 排序 。 

5.5  什么是满 二叉树 、完全  二叉树 、 平衡二叉树 ?
(1)当一个树每一层的结点个数都达到最大时,这个树是满 二叉树 。 
(2)当一个树除了最后一层外其他每一层的结点数都达到最大,且最后一层的叶子结点都靠左排列时,这个树是完全 二叉树 。满  二叉树 是一种特殊的完全 二叉树 。 
(3)当且仅当一个树两个子树的高度差不超过1时,这个树是 平衡二叉树 。 

5.6 堆和栈的的区别?

数据 结构的堆和栈

栈是一种先进后出的 数据结构。堆是一种经过  排序的树形 数据 结构(通常是二叉堆),每个结点都有一个值,根结点的值最小或最大,常用来实现优先队列,堆的存储是随意的。

C 语言内存分配的堆和栈

栈是向下生长的,栈中分配函数参数和局部变量,其分配方式类似于 数据 结构中的栈。堆是向上生长的,堆中分配程序员申请的内存空间(一旦忘记释放会造成内存泄漏),其分配方式类似于  数据 结构中的 链表 。


以上内容摘自专刊《嵌入式岗位笔试面试真题讲解》,该专刊不仅有真题讲解,还有经验分享,不清楚嵌入式该学什么的同学,想找嵌入式实习/正式工作的同学,都可以来看看:        


引流: 华为 、  小米 、   OPPO、VIVO、荣耀、一加、    CVTE、   大疆 、insta360影石、   美的 、   TCL   、 海信、创维、烽火、比亚迪 、吉利、长安、大众、   经纬恒润 、小鹏、  图森未来、    百度 、   滴滴、蔚来、理想、 联发科、   紫光展锐 、全志、    寒武纪 、   晶晨半导体 、汇顶、    华为、  中兴、    浪潮 、   TP-LINK、讯飞、商汤、    海康威视 、浙江  大华    、360、小马智行、   元戎启行     、   深信服     、移动、联通、电信、 旷视 、  四维图新 、 中芯国际、复旦微电子。 
SWPqf0Xn0g8Vg9sYhY52qOZUZUVZfr49.jpg lyonGuOJR7aYUtSjI6LoCapcOa3lBZmn.jpg
#内推##提前批##嵌入式##软件工程师##实习,投递多份简历没人回复怎么办#
全部评论
我觉得资料很全,总结的习题也很好,在面试的时候有被问到推荐求职嵌入式软件的各位订阅看
1 回复 分享
发布于 2022-09-21 12:33 天津
资料很好
1 回复 分享
发布于 2022-09-23 21:30 湖南
https://www.nowcoder.com/discuss/1025638
1 回复 分享
发布于 2022-10-15 09:31 北京
很全面,可以作为大纲丰富自己
1 回复 分享
发布于 2022-10-24 16:03 陕西
优质面经,够详细
点赞 回复 分享
发布于 2022-09-18 15:47 广东
我之前已经订阅了,但是今天发现订阅消失了,还需要再次订阅才能看
点赞 回复 分享
发布于 2022-09-21 09:57 四川
很好的面经,努力冲
点赞 回复 分享
发布于 2022-09-21 14:38 江苏
资料很好👍
点赞 回复 分享
发布于 2022-09-25 19:00 四川
资料很好,对秋招小白很有帮助
点赞 回复 分享
发布于 2022-09-27 16:37 广东
冲冲冲
点赞 回复 分享
发布于 2022-09-27 22:13 四川
感谢分享
点赞 回复 分享
发布于 2022-09-29 18:17 广西

相关推荐

斑驳不同:还为啥暴躁 假的不骂你骂谁啊
点赞 评论 收藏
分享
牛客717484937号:双飞硕没实习挺要命的
点赞 评论 收藏
分享
4 60 评论
分享
牛客网
牛客企业服务