关于动态规划【力扣392.判断子序列的思考】

1、目前动态规划的子序列系列的题目之间的区别与联系

【力扣300.最长递增子序列】一个数组,不连续

【力扣674.最长连续递增子序列】一个数组,连续

【力扣718.最长重复子数组】两个数组,连续

【力扣1143.最长公共子序列】两个数组,不连续

【力扣1035.不相交的线】(与1143本质一样)两个数组,不连续

【力扣53.最大子数组和】一个数组,连续

本题【力扣392.判断子序列】(与1143本质一样)两个数组,不连续

2、本题与力扣1143.最长公共子序列的关键区别

关键区别在于【递推公式】

【1143的递推公式如下图所示】

【本题的递推公式如下图所示】

【接下来重点探讨为什么本题的递推公式是这样】

因为本题的题目要求是判断s是不是t的子序列,也就是说s是比较短的那个数组,s不会再回退了

关键就是s不能回退,如下图所示

而1043那题s可以回退,如下图所示

3、在力扣1143.最长公共子序列的代码基础上,本题处理了三个地方

【改数组名】

【改递推公式】

【改返回值】

4、注意事项

(最好不要硬编码二维dp数组的长和宽)【要动态分配dp数组】

(否则会报如下错误)

【正确写法】

内容概要:本文档《camera流程图qcom.docx》详细阐述了Android相机子系统的架构、HAL层实现及API调用流程。文章首先介绍了相机的不同模式(如全景、夜景、HDR等),接着深入探讨了相机适配中的方向和大小问题,包括预览方向、传感器方向、图片预览方向以及SurfaceView/TextView、PreViewSize、PictureSize的设置方法。文档还详细描述了相机调试手段,如ADB TAG、底层调试工具、dumpsys命令等。随后,文章对Android Camera的整体架构进行了概览,包括旧版和新版架构的对比,以及Camera API1和API2的具体实现流程。此外,文档介绍了Camera HAL3的功能和实现,包括其与旧版HAL的区别、重要结构体及定义、HAL子系统的工作原理等。最后,文档还讨论了CamX架构,特别是其在高通平台上的实现细节,包括CHI API、体系结构模式、自定义Use Case示例、元数据和控件等内容。适用人群:具备一定Android开发经验,尤其是对相机开发感兴趣的工程师和开发者。使用场景及目标:①理解Android相机子系统的架构及其实现细节;②掌握Camera API1和API2的调用流程和区别;③熟悉相机HAL3的实现,特别是在高通平台上的CamX架构;④学习如何调试和优化相机应用,包括方向适配、大小适配、多摄像头支持等。阅读建议:本文档内容丰富且技术性强,建议读者结合实际项目需求逐步阅读,并重点关注自己感兴趣或工作中遇到的问题。对于初学者,建议先理解Camera API1和API2的基本概念和调用流程,再深入研究HAL层和CamX架构的实现细节。同时,结合文档中的调试手段,进行实践操作,以加深理解和掌握。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值