- 博客(6)
- 收藏
- 关注
原创 KMP OpenHarmony 最长递减子序列(Longest Decreasing Subsequence)算法对比
本文探讨了最长递减子序列(LDS)问题的多种解决方案及其在KMP OpenHarmony框架下的实现。LDS问题与最长递增子序列(LIS)密切相关,在股票分析、数据排序等领域有广泛应用。文章详细介绍了五种算法方案:1)动态规划法(O(n²));2)二分查找优化法(O(n log n));3)贪心二分查找法;4)路径追踪法;5)反向转换法。重点分析了各方案的时间/空间复杂度、优缺点及适用场景,并提供了完整的Kotlin实现代码,包括动态规划、二分查找优化以及返回具体子序列的路径追踪方法。对于大规模数据,推荐使
2025-12-07 17:19:06
1051
原创 KMP OpenHarmony 最大子数组和(Maximum Subarray Sum)算法对比
本文探讨了最大子数组和问题的多种解决方案及其在KMP框架下的实现。介绍了暴力枚举法、动态规划法、Kadane算法、带路径追踪的Kadane算法和分治法五种算法,分析了它们的时间复杂度、空间复杂度及适用场景。重点推荐了时间复杂度最优的Kadane算法(O(n)),并提供了完整的Kotlin实现代码,包括能够返回具体子数组位置的路径追踪版本。该算法在金融分析、股票交易等领域有广泛应用,适合在OpenHarmony鸿蒙平台上进行跨端调用。
2025-12-07 17:15:36
719
原创 KMP & OpenHarmony 实现最大公约数
本文介绍了使用Kotlin Multiplatform(KMP)实现欧几里得算法计算最大公约数(GCD),并将其编译为JavaScript后在OpenHarmony应用中调用的完整流程。文章详细展示了递归和迭代两种GCD实现方式,以及最小公倍数(LCM)的计算方法。通过@JsExport注解导出Kotlin函数,编译生成JavaScript文件,在OpenHarmony应用中通过ArkTS调用并输出结果到控制台。该方案实现了跨平台算法复用,为OpenHarmony应用开发提供了数学计算能力支持,适用于密码学
2025-11-29 12:20:09
853
原创 KMP & OpenHarmony 实现拓扑排序
拓扑排序是对有向无环图(DAG)的顶点进行线性排序,使每条有向边(u,v)中u总在v之前。本文详解了两种实现方法:Kahn算法(基于入度)和DFS算法,并提供了Kotlin代码实现。通过@JsExport注解可将算法导出为JavaScript,方便在OpenHarmony等平台调用。拓扑排序广泛应用于课程先修关系、编译器优化和任务调度等领域,时间复杂度均为O(V+E)。Kahn算法实现简单且更常用,而DFS算法能显式检测环。
2025-11-29 12:18:34
813
原创 KMP 实现鸿蒙跨端:Kotlin 随机抽奖模拟工具
本文介绍了一个基于Kotlin Multiplatform(KMP)的随机抽奖模拟工具实现方案。该工具允许用户输入候选人列表和抽取人数,如"小明,小红,小刚,小李 2",核心Kotlin代码通过解析输入、验证约束条件,使用shuffled()和take()方法实现随机抽选功能,并生成包含中奖/未中奖名单的格式化结果。通过@JsExport注解将Kotlin函数暴露给JavaScript,最终在OpenHarmony应用的ArkTS页面中调用展示。该方案展示了KMP在跨平台开发中的应用,可
2025-11-28 21:18:22
767
原创 Electron for OpenHarmony 实战:Dialog 对话框组件实现 PC适配
本文介绍了在Electron for OpenHarmony项目中使用Dialog对话框组件的实现方法。主要内容包括: 对话框的使用场景:确认操作、填写信息、展示详情等,保持上下文不跳转页面。 基础实现:通过v-model控制显示状态,包含标题、内容和底部按钮。 样式定制:使用width设置宽度,center属性实现居中对齐。 表单处理:对话框内嵌表单的验证与提交逻辑,关闭时重置表单。 关闭确认:通过before-close实现关闭前的二次确认。 交互控制:禁用点击遮罩层和ESC键关闭对话框。
2025-11-28 21:15:46
991
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅