记录一次,利用AI DeepSeek,解决工作中算法和无限级树模型问题

前言

一般在公司的业务中,很少涉及到数据结构和算法问题。很多人都是为了面试,去卷算法题,卷数据结构。我也工作了5年左右了,其实也没写过什么牛逼的算法业务,基本都是体力活,没什么东西,全是CRUD,我只是个码农之王而已。 但是,这次还真的遇到了实际的算法业务,这不得好好写篇文章,吹一下

需求

假设,我这边有个任务概念,老师交给小明一个任务,但是这个任务很复杂,需要把这个任务分给很多同学去协作完成,那么这里就需要对任务进行拆分;那么大任务可以拆分成各种子任务;假设大任务用X表示,下面子任务有 任务A,任务B,任务C,依次类推是不是,可以有N个任务;同理任务A,也可以拆分成任务A-1,任务A-2,理论子任务也可以无限拆分,可以看图,大概如下

那么,现在需要把这个任务的执行顺序找出来,然后分配给同学,让他们按照这个顺序去执行;那么这个执行顺序大致就是:X -> A -> A-1 -> A-1 -> A-2 -> A-3 -> B -> C,这个不就是我们实际需要用到的执行顺序吗,好好理解一下是不是,只有完成了前面的所有任务才能到下一个任务。这种模型需求在生产制造行业其实很多,比如工序,工序分A B C D A-1 A-2 B-1 C-1等;所以我们如何才能解决这个排序问题呢?

神来之笔

其实学过数据结构和算法的同鞋可能就有印像了,这个有点类似于二叉树的先序遍历,唯一不同,这个是多叉树,二叉树还算简单了。

所以找到了大概的方向,就可以按照这个思路去解决了。

让AI DeepSeek给我写代码

其实这里提供了两种解决方案,一种是递归,还有一种利用栈的结构处理

验证代码

总结

通过AI,拿到了模型代码后,最后就根据代码的入参,组合出方法需要的参数结构,通过调用就可以解决我的需求,但是如果不同AI,我自己可能写不出来,所以,还是要多发散思维,毕竟时间都挺宝贵,好啦就到这啦,88。

相关推荐
我是一颗柠檬2 小时前
【Java项目技术亮点】加权轮询负载均衡算法
java·算法·负载均衡
灯厂码农2 小时前
C语言动态内存分配完全指南(malloc、calloc、realloc、free)
java·c语言·算法
geovindu2 小时前
python: Functional Options Pattern
开发语言·后端·python·设计模式·惯用法模式·函数式选项模式
凯瑟琳.奥古斯特3 小时前
K次取反最大化数组和解法(力扣1005)
开发语言·c++·算法·leetcode·职场和发展
Jerry4 小时前
LeetCode 203. 移除链表元素
算法
地平线开发者4 小时前
征程 6 | 工具链 QAT ObserverBase 源码解析
算法
卷无止境4 小时前
C++ 存储类说明符(Storage Class Specifier)大横评
c++·后端
用户019027581614 小时前
量化数据的 batch 接口有多好用?从 1 只到 500 只,批量拉数据的正确姿势
后端
rruining4 小时前
Java设计模式——结构型
后端