海康威视的面试题,靠这篇核心算法攻略,【一步教学,一步到位】

  • 最小生成树算法:Prim,Kruskal(必学)

  • 实际常用算法:关键路径、拓扑排序(原理与应用)

  • 二分图匹配:配对、匈牙利算法(原理与应用)

  • 拓展:中心性算法、社区发现算法(原理与应用)

图还是比较难的,不过我觉得图涉及到的挺多算法都是挺实用的,例如最短路径的计算等,图相关的,我这里还是建议看**《算法第四版》。**

2、十大排序算法

  • 简单排序:插入排序、选择排序、冒泡排序(必学)

  • 分治排序:快速排序、归并排序(必学,快速排序还要关注中轴的选取方式)

  • 分配排序:桶排序、基数排序

  • 树状排序:堆排序(必学)

  • 其他:计数排序(必学)、希尔排序

对于十大算法的学习,假如你不大懂的话,那么我还是挺推荐你去看书的,因为看了书,你可能不仅仅知道这个算法怎么写,还能知道他是怎么来的。推荐书籍是《算法第四版》,这本书讲的很详细,而且配了很多图演示,还是挺好懂的。

3、搜索与回溯算法

  • 贪心算法(必学)

  • 启发式搜索算法:A*寻路算法(了解)

  • 地图着色算法、N 皇后问题、最优加工顺序

  • 旅行商问题

这方便的只是都是一些算法相关的,我觉得如果可以,都学一下。像贪心算法的思想,就必须学的了。建议通过刷题来学习,leetcode 直接专题刷。

4、动态规划

  • 树形 DP:01 背包问题

  • 线性 DP:最长公共子序列、最长公共子串

  • 区间 DP:矩阵最大值(和以及积)

  • 数位 DP:数字游戏

  • 状态压缩 DP:旅行商

5、字符匹配算法

  • 正则表达式

  • 模式匹配:KMP、Boyer-Moore

6、流相关算法

  • 最大流:最短增广路、Dinic 算法

  • 最大流最小割:最大收益问题、方格取数问题

  • 最小费用最大流:最小费用路、消遣

小结

==

上面涉及到的算法可以不用很懂,但至少得了解。至于书籍的话,如果你连基本数据结构都还不懂的,建议看**《数据结构与算法》相关书籍,例如《大话数据结构》、《数据结构与算法分析》。如果你有一定的基础,例如知道链表,栈,队列,那么可以看《算法第四版》,这本书是用 Java 实现的。这些算法的学习,虽然你觉得学了没有什么用,但还是那些话,它对你的影响是潜意识的,它可以给你打下很深厚的基础内功,如果你想走的更远,那么我推荐学习,标注必学的,那么我觉得,你是真的需要抽时间来学习下,标注原理与应用**的,代表你可以不知道怎么用代码实现,但是必得知道它的实现原理以及应用

最后,很多人问我都是怎么学习算法的,那我干脆就把我看过的优质书籍贡献出来:

数据结构+算法入门:《数据结构与算法分析:C语言描述版》,《大话数据结构》、《阿哈算法》

算法进阶:《算法第四版》、《编程之美》、《编程珠玑》

Java技术栈推荐书籍

Java:《Java核心技术卷1》、《编程思想》、《深入理解Java虚拟机》、《Java并发编程艺术》

数据库:《mysql必知必会》、《MySQL技术内幕:InnoDB存储引擎》

就先介绍这么多,这些都是最基础最核心滴,希望对那些不知道看什书的同学有所帮助
有收获的话希望老铁们来个三连击,戳下方就可以免费获取了

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
img
img
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以添加V获取:vip1024b (备注Java)
img

最后

面试是跳槽涨薪最直接有效的方式,马上金九银十来了,各位做好面试造飞机,工作拧螺丝的准备了吗?

掌握了这些知识点,面试时在候选人中又可以夺目不少,暴击9999点。机会都是留给有准备的人,只有充足的准备,才可能让自己可以在候选人中脱颖而出。

一个人可以走的很快,但一群人才能走的更远。如果你从事以下工作或对以下感兴趣,欢迎戳这里加入程序员的圈子,让我们一起学习成长!

AI人工智能、Android移动开发、AIGC大模型、C C#、Go语言、Java、Linux运维、云计算、MySQL、PMP、网络安全、Python爬虫、UE5、UI设计、Unity3D、Web前端开发、产品经理、车载开发、大数据、鸿蒙、计算机网络、嵌入式物联网、软件测试、数据结构与算法、音视频开发、Flutter、IOS开发、PHP开发、.NET、安卓逆向、云计算

389e65ecb71ac0)

AI人工智能、Android移动开发、AIGC大模型、C C#、Go语言、Java、Linux运维、云计算、MySQL、PMP、网络安全、Python爬虫、UE5、UI设计、Unity3D、Web前端开发、产品经理、车载开发、大数据、鸿蒙、计算机网络、嵌入式物联网、软件测试、数据结构与算法、音视频开发、Flutter、IOS开发、PHP开发、.NET、安卓逆向、云计算

  • 8
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
康威嵌入式面试BSP主要是测试应聘者在嵌入式系统中的底层开发和调试方面的技能。 首先,对于康威嵌入式岗位面试BSP的要求一般会包括以下几个方面: 1. 操作系统知识:应聘者需要具备嵌入式操作系统的基本知识,例如Linux、RTOS等,了解操作系统的内核结构以及驱动程序的开发和调试。 2. C/C++语言编程能力:对于嵌入式系统,C/C++是主要的开发语言,应聘者需要具备熟练的编程能力和良好的代码质量意识。 3. 编程工具和调试技能:应聘者需要熟悉常用的开发工具,例如gcc、gdb等,并且具备一定的调试经验,能够定位和修复底层驱动程序的错误。 4. 硬件知识:应聘者需要了解嵌入式系统的硬件组成和接口标准,例如ARM架构、PCIe、USB等,能够根据硬件要求进行底层驱动程序的开发和适配。 在面试过程中,可能会遇到以下问: 1. 请解释嵌入式操作系统和普通操作系统的区别。 2. 如何设计和实现一个简单的设备驱动程序? 3. 请解释中断和轮询的区别,并说明在什么情况下使用中断更为合适? 4. 当一个硬件设备出错时,如何进行调试和定位问?举例说明。 此外,面试官还可能会通过编程、技术问和项目经验来考察应聘者的技能。 总之,康威嵌入式面试BSP主要考察应聘者在嵌入式底层开发和调试方面的技能和经验。应聘者需要熟悉操作系统、掌握C/C++编程技能、具备调试经验,并且对嵌入式硬件有一定的了解。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值