当前位置:首页 > 每日看点

会写递归超越了多少程序员?

卡卷网2年前 (2024-12-12)每日看点255

一般来说公司代码里写递归的只有两种人。

一种是大拿,他写的代码基本上就是你司的最高水平,他怎么写代码你最好别质疑,因为他大概率是你司最权威的开发,他写成这样自有他的想法。

另外一种,是公司的BUG制造机,基本上名下挂着一裤衩子BUG改不完,关键自己还觉得自己很厉害,这种人一般离开除只差一个重大事故。

鉴于你问“会写递归超越了多少程序员?”,我觉得你大概率是后一种。


有一种脑子就是认死理,知乎小鬼太多了。非得跟我说树状结构只能用递归遍历,唉,上点干货吧。

首先你得知道,基本上树状结构都是从数据库加载进来的,每一个节点都是在数据库里的一行。而这些节点其实都在一张表里。

那么,我就可以根据这张表建一个数组,数组里有这棵树上的每一个节点,然后只需要通过遍历这个数组,你就能用这个数组去组成一个树展示在画面上,最笨最笨,你用一个循环加一个节点名-》节点指针(如果是java这种现代语言直接用对象就行,class对象其实就是一种限制很大的指针)的字典就能把这个树拼出来。

当你需要取特定特征的节点的时候,你也不需要去刚才生成的那个树里取,直接找刚才那个数组,就能取到任何一个节点。

当你需要修改节点在树上的位置的时候,你只需要修改这个节点的父节点然后重新调用方法生成这个树就可以了,不需要真的把节点挪过去,增删同理。

也就是说,只要你会了如何从数据库里生成树,那么你就能通过循环简单的对树进行任意操作而不需要递归。除非你作为赛博原始人还在用红黑树快速查找数据。

绝大多数算法难题其实都不是你写不出来导致的,而是这个东西在设计阶段就不合理,应该从设计阶段规避这个困难防止死磕一个容易出事的辣鸡代码片段。

树,图等复杂结构都可以通过这个方法取规避递归,特别是图,算法遍历图十个有九个是有潜在BUG的。碰都别碰。20年以前内存值钱,所以算法里会有大量的红黑树等数据结构来平衡查询消耗的时间和内存占用,但是现在你画一百颗树可能都没有画面上的一张图片占内存,扣这点内存不如用白菜价的内存换CPU运算时间来的合适。

扫描二维码推送至手机访问。

版权声明:本文由卡卷网发布,如需转载请注明出处。

本文链接:https://www.kajuan.net/ttnews/2024/12/4036.html

分享给朋友:

相关文章

现在手里有一万闲钱,买什么币好?

今天是2024年7月29日,看看我的持仓吧。 只有几百刀的那些微持仓就不说了,以下持仓都在几千刀~几万刀不等。 不构成任何投资建议,成本是多次买入的大致均摊成本 $TIA 成本0 $DYM 成本0 $SAGA 成本0 $STRK 成本0 $…

是什么让你抛弃了 Windows 而转向 Mac?

是什么让你抛弃了 Windows 而转向 Mac?

别的不说,这玩意儿是真抗造啊,我这2012年买的MacBook Pro,依然在用…… 这台电脑我博士最后两年用来写代码(只写不运行,运行要上集群)和写论文,工作之后就变成生活和娱乐了,因为我一直用架子和外接键盘(颈椎不好)所以电脑看…

抖音和快手最大的区别是什么?

1、目标人群定位不同抖音:一二线城市,占比52%,大专学历以上,女性偏多。抖音以年轻群体居多。 快手:三四线城市,占比64%,高中学历以下,男女更均衡。快手所覆盖的年龄段范围更广。 2、内容创作的形式和深度不同抖音:偏深层,内容的装饰及表达…

有哪些是你用上了mac才知道的事?

用上了高端的Mac(已退货)才知道:原来文件夹里面的文件,你看到是8个,其实可能有12个。其中3个图标重叠在一起了,另外一个被拖动到屏幕外面了。 用上了高端的Mac(已退货)才知道:原来鼠标灵敏度有问题是因为系统内置了鼠标加速度,只能用控制…

为什么雷军身上没有酒色财气?

武大建校130周年时,雷军向母校个人捐款13亿。 在2023年8月14日晚上七点,雷总在国家会议中心举行的进行第四次年度演讲「成长」: 全篇都在谈成长、梦想,这么多年了,始终做到了知行合一,我相信酒色财气可能真不是他所追求的,一直追求的就像…

是什么原因让你一定要用 iPhone?

是什么原因让你一定要用 iPhone?

1、不用清理内存,iPhone真的可以开机用上一年,你根本不用关注期间打开过什么软件。 2、支持的频段足够多,天天在国内走动倒是无所谓,很多Android手机一旦出去了,就会发现很多运营商接入都是问题,更不用说各种本土化的服务了。 3、…

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。