当前位置:首页 > 每日看点 > 正文内容

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

卡卷网1年前 (2024-12-12)每日看点187

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

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

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

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


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

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

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

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

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

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

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

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

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

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

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

分享给朋友:

相关文章

200+ 工具,这个网站堪称最强

200+ 工具,这个网站堪称最强

作为一个乱七八糟什么都懂一点的电脑小白,日常经常被别人增加些临时任务,比如PDF转Word,提取视频里的音频,图片加个边框。之前,电脑里安装了不少这类的软件,虽然能满足要求,但装的多了,总感觉电脑卡卡的。最近发现了一个超强的在线工具网站,首...

感觉手机配置都差不多,为什么有的手机能卖2k-3k,而有的手机却能卖到6k-8k?

感觉手机配置都差不多,为什么有的手机能卖2k-3k,而有的手机却能卖到6k-8k?

与所有的商品一样,手机的价格,也是由它的成本所决定的。虽然看起来3000元的手机和6000的手机配置差不多,甚至处理器都可能是同一个,但在很多大家容易忽略的地方,决定了两者价格的不同:例如手机的外观,塑料的机身,与素皮机身和玻璃机身就完全不...

开发了个小程序,咋推广呢?

要是开发了个小程序,想推广的话,可以先从自己的朋友圈子下手,让亲戚朋友都帮忙转发宣传,这样能先有点人气。然后去一些跟你的小程序相关的论坛、社区啥的,发帖子介绍介绍,吸引有兴趣的人。还能找些网红、博主合作,要是他们觉得你的小程序不错,帮忙推荐...

打印速度慢,是不是打印机cpu不行?

打印速度慢,是不是打印机cpu不行?

打印机是机械设备,cpu内存硬盘它也有但这只是它的电控部分,打印机类似于汽车属于机电一体化设备和电脑不是一个类型的产品。很多人总是认为打印机和电脑是一类产品,实际上这是一个误区,电脑是it(Information Technology)信息...

闲鱼上为什么会有人问都不问直接下单?

我去年卖一个荣耀90,挂的2200,最终成交2137.5元。对方是一个高高壮壮的西北口音,要求的自取。大概我吃过午饭,约了旁边的商场,那里有荣耀售后。见了面,先看了手机,试了好一会儿,各种测试,没问题。然后去了商场二楼的荣耀售后,让人家售后...

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

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

发表评论

访客

看不清,换一张

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