从ChatGPT与New Bing看程序员为什么要学习算法?

文章目录

  • 为什么要学习数据结构和算法?
    • ChatGPT与NEW Bing 的回答
    • 想要通关大厂面试,就不能让数据结构和算法拖了后腿
    • 业务开发工程师,你真的愿意做一辈子CRUD boy吗?
    • 对编程还有追求?不想被行业淘汰?那就不要只会写凑合能用的代码!
    • 学习计划

为什么要学习数据结构和算法?

“算法难道不是脱离实际工作的知识?可能除了面试,这辈子也用不着吧?”

你是不是和我想的一样?

尽管计算机相关专业的同学在大学都学过这门课程,甚至很多培训机构也会培训这方面的知识,但是,很多程序员对数据结构和算法依旧一窍不通。还有一些人也只听说过数组、链表、快排这些最最基本的数据结构和算法,稍微复杂一点的就完全没概念。

当然,也有很多人说,自己实际工作中根本用不到数据结构和算法。所以,就算不懂这块知识,只要Java API、开发框架用得熟练,照样可以把代码写得“飞”起来。事实真的是这样吗?
image-20230313111032334
我们先来听听ChatGPT与NEW Bing怎么回答“程序员为什么要学习数据结构和算法”。

ChatGPT与NEW Bing 的回答

NEW Bing

image-20230313102821448

ChatGPT

image-20230313103002003

想要通关大厂面试,就不能让数据结构和算法拖了后腿

很多大公司,比如BAT、Google、Facebook,面试的时候都喜欢考算法、让人现场写代码。有些人虽然技术不错,但每次去面试都会“跪”在算法上,很是可惜。那你有没有想过,为什么这些大公司都喜欢考算法呢?

校招的时候,参加面试的学生通常没有实际项目经验,公司只能考察他们的基础知识是否牢固。社招就更不用说了,越是厉害的公司,越是注重考察数据结构与算法这类基础知识。相比短期能力,他们更看中你的长期潜力。

你可能要说了,我不懂数据结构与算法,照样找到了好工作啊。那我是不是就不用学数据结构和算法呢?当然不是,你别忘了, 我们学任何知识都是为了“用”的,是为了解决实际工作问题的,学习数据结构和算法自然也不例外。

img

业务开发工程师,你真的愿意做一辈子CRUD boy吗?

如果你是一名业务开发工程师,你可能要说,我整天就是做数据库CRUD(增删改查),哪里用得到数据结构和算法啊?

是的,对于大部分业务开发来说,我们平时可能更多的是利用已经封装好的现成的接口、类库来堆砌、翻译业务逻辑,很少需要自己实现数据结构和算法。但是, 不需要自己实现,并不代表什么都不需要了解

如果不知道这些类库背后的原理,不懂得时间、空间复杂度分析,你如何能用好、用对它们?存储某个业务数据的时候,你如何知道应该用ArrayList,还是Linked List呢?调用了某个函数之后,你又该如何评估代码的性能和资源的消耗呢?

作为业务开发,我们会用到各种框架、中间件和底层系统,比如Spring、RPC框架、消息中间件、Redis等等。 在这些基础框架中,一般都揉和了很多基础数据结构和算法的设计思想。

比如,我们常用的Key-Value数据库Redis中,里面的有序集合是用什么数据结构来实现的呢?为什么要用跳表来实现呢?为什么不用二叉树呢?

如果你能弄明白这些底层原理,你就能更好地使用它们。即便出现问题,也很容易就能定位。因此, 掌握数据结构和算法,不管对于阅读框架源码,还是理解其背后的设计思想,都是非常有用的。

在平时的工作中,数据结构和算法的应用到处可见。我来举一个你非常熟悉的例子:如何实时地统计业务接口的99%响应时间?

你可能最先想到,每次查询时,从小到大排序所有的响应时间,如果总共有1200个数据,那第1188个数据就是99%的响应时间。很显然,每次用这个方法查询的话都要排序,效率是非常低的。但是,如果你知道“堆”这个数据结构,用两个堆可以非常高效地解决这个问题。

img

对编程还有追求?不想被行业淘汰?那就不要只会写凑合能用的代码!

何为编程能力强?是代码的可读性好、健壮?还是扩展性好?我觉得没法列,也列不全。但是,在我看来, 性能好坏起码是其中一个非常重要的评判标准。但是,如果你连代码的时间复杂度、空间复杂度都不知道怎么分析,怎么写出高性能的代码呢?

你可能会说,我在小公司工作,用户量很少,需要处理的数据量也很少,开发中不需要考虑那么多性能的问题,完成功能就可以,用什么数据结构和算法,差别根本不大。但是你真的想“十年如一日”地做一样的工作吗?

经常有人说,程序员35岁之后很容易陷入瓶颈,被行业淘汰,我觉得原因其实就在此。有的人写代码的时候,从来都不考虑非功能性的需求,只是完成功能,凑合能用就好;做事情的时候,也从来没有长远规划,只把眼前事情做好就满足了。

可是如果你在一家成熟的公司,面对的是千万级甚至亿级的用户,开发的是TB、PB级别数据的处理系统。性能几乎是开发过程中时刻都要考虑的问题。一个简单的ArrayList、Linked List的选择问题,就可能会产生成千上万倍的性能差别。这个时候,数据结构和算法的意义就完全凸显出来了。

其实,我觉得,数据结构和算法这个东西,如果你不去学,可能真的这辈子都用不到,也感受不到它的好。但是一旦掌握,之前你可能需要费很大劲儿来优化的代码,需要花很多心思来设计的架构,用了数据结构和算法之后,很容易就可以解决了。

img

学习计划

还记得你刚学算法时手写出冒泡排序时的喜悦,以及被其精妙的想法折服时的心情吗?

public class BubbleSort {public static void main(String[] args) {int[] array = {5, 3, 8, 4, 2};bubbleSort(array);for (int i : array) {System.out.print(i + " ");}}public static void bubbleSort(int[] array) {int n = array.length;for (int i = 0; i < n - 1; i++) {for (int j = 0; j < n - i - 1; j++) {if (array[j] > array[j + 1]) {int temp = array[j];array[j] = array[j + 1];array[j + 1] = temp;}}}}
}

让我们重拾这片心情,继续朝着算法这条路出发吧!

出于对算法的探索以及为了备战四月的蓝桥杯,我报名了这次新星计划中的算法赛道,在接下来的两周里我会持续分享我学习算法的过程与总结。学习任何东西都需要有一个计划,而且这个计划要根据自己的实际情况来制定。比如:

  • 我们应该先从哪些基础知识开始入门?
  • 我们应该按照什么样的顺序和难度来逐渐深入?
  • 我们应该花多少时间来练习编码和调试?
  • 我们应该如何评估自己的进度和效果?

就让我带着大家一起领略算法的神秘与五彩缤纷的世家吧!

img

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/5827.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

黑马威武||《ChatGPT全通关》免费学

2023年&#xff0c;不会还有人不知道ChatGPT吧。 它是史上最快突破1亿用户的软件产品&#xff0c;上线即刷爆各大社交平台&#xff0c;多次霸榜微博热搜&#xff0c;它衍生出了无数副业&#xff0c;甚至有人用它两个月狂赚30万...... 比尔盖茨都评论说“这将改变我们的世界”…

【AutoGPT】AutoGPT出现,是否意味着ChatGPT已被淘汰

Yan-英杰的主页 悟已往之不谏 知来者之可追 C程序员&#xff0c;2024届电子信息研究生 目录 前言 什么是ChatGPT&#xff1f; 什么是AutoGPT&#xff1f; AutoGPT与ChatGPT的区别 AutoGPT的优势和劣势 优势 劣势 ChatGPT是否会被淘汰&#xff1f; 前言 近年来&#x…

ChatGPT未来会取代程序员吗?

前言 程序员更多的时间是在调试和修改代码&#xff0c;包括讨论需求同步信息等&#xff0c;然后才是写代码-时间占比最多也就是20%~30%左右&#xff0c;而更时间占比更多的80%左右需要程序员用独立思考能力和批判性思维进行工作&#xff0c;这是ChatGPT目前还做不到的地方。即…

体验了一把ChatGPT,程序员不用写注释了...VSCode+ChatGPT 编程利器

额&#xff0c;作为一名程序员&#xff0c;最烦的就是写注释&#xff0c;写文档&#xff0c;如果能直接在编辑器中直接帮我提供这样的功能&#xff0c;免得开发阶段写大量注释&#xff0c;那么今天&#xff0c;它来了… VSCode是一款开源、轻量级的跨平台集成开发环境&#xf…

科大讯飞辟谣星火大模型套壳ChatGPT;谷歌发布AI语言模型PaLM 2;OpenAI CEO将赴美国为AI辩护丨每日大事件...

‍ ‍数据智能产业创新服务媒体 ——聚焦数智 改变商业 企业动态 英特尔与波士顿咨询公司联合推出企业级生成式AI解决方案 近日&#xff0c;波士顿咨询公司&#xff08;BCG&#xff09;和英特尔宣布开展战略合作&#xff0c;为企业客户提供完全定制的专有解决方案&#xff0c;…

互联网晚报 |疑似小米汽车设计效果图曝光;三亚海鲜餐饮协会建议各类珍稀海产品加价50%;亚马逊已在多种工作中使用ChatGPT...

三亚海鲜餐饮协会倡议&#xff1a;建议各类珍稀海产品加价率50%以内 三亚市海鲜餐饮协会发布倡议书。其中提到&#xff0c;不哄抬海鲜及其他消费、服务价格。请全市海鲜餐饮星级商家、海鲜餐饮高质量服务餐厅、大型餐饮企业等标杆餐饮企业发挥模范带头作用&#xff0c;除政府实…

Spring WebFlux 响应式Web框架

Spring WebFlux是随Spring 5推出的响应式Web框架。 服务端技术栈 Spring提供了完整的支持响应式的服务端技术栈。 如上图所示&#xff0c;左侧为基于spring-webmvc的技术栈&#xff0c;右侧为基于spring-webflux的技术栈&#xff0c; Spring WebFlux是基于响应式流的&#x…

学术专用版ChatGPT,开源了!

Datawhale干货 项目&#xff1a;GPT学术版&#xff0c;来源&#xff1a;机器之心 用 ChatGPT 辅助写论文这件事&#xff0c;越来越靠谱了。 ChatGPT 发布以来&#xff0c;各个领域的从业者都在探索 ChatGPT 的应用前景&#xff0c;挖掘它的潜力。其中&#xff0c;学术文本的理…

【SAP】为什么2023年后ABAP仍有广阔前景「来听听ChatGPT怎么说」

&#x1f482;作者简介&#xff1a; THUNDER王&#xff0c;一名热爱财税和SAP ABAP编程以及热爱分享的博主。目前于江西师范大学会计学专业大二本科在读&#xff0c;同时任汉硕云&#xff08;广东&#xff09;科技有限公司ABAP开发顾问。在学习工作中&#xff0c;我通常使用偏后…

我继续问了ChatGPT关于SAP顾问职业发展前景的问题,大家感受一下

目录 SAP 顾问 跟其他IT工作收入情况相比是怎么样的&#xff1f; 如何成为SAP FICO 优秀的顾问 要想成为SAP FICO 优秀的顾问 &#xff0c;需要ABA开发技能吗 SAP 顾问中哪个类型收入最多&#xff1f; 中国的ERP软件能够取代SAP吗&#xff1f; 今天我继续撩 ChatGPT。随便问…

chatgpt-retrieval-plugin实操上手chatgpt插件的开发

chatgpt发布了插件chatgpt-retrieval-plugin,做为目前热门的技术,恰好我上手python也好几年了,如此热门的东东,不上手实操下有点对不住自己上手好几年的python了。 不多废话了,开始上手这个chatgpt-retrieval-plugin,所用到的环境及技术:win10操作系统、VMware、centos…

能使用chatgpt的一款插件

最近真的被这个破学校逼疯了&#xff0c;数不清的破文档&#xff0c;像依托答辩&#xff0c;无从下手&#xff0c; 还好有他&#xff0c;我们的 WebTab ,内置的chatgpt&#xff0c;让我注水课设&#xff0c;游刃有余 现在&#xff0c;我要从0开始教你如何下载并使用这款好用的…

车万翔:ChatGPT时代,NLPer 的危与机

来自&#xff1a;智源社区 要点速览&#xff1a; ChatGPT的诞生&#xff0c;源于研究者「暴力美学」的手段。如果大胆预测&#xff0c;ChatGPT能火几年&#xff0c;我猜可能是2到3年的时间&#xff0c;到2025年大概又要更新换代了。工业界相较于学术界拥有巨大优势。这种「AI 的…

ChatGPT研究分享:插件模式的利与弊

目录 1、插件的实现方式 1.1 Toolformer 1.2 OpenAI插件文档 1.3 个人感想 2、一些有意思的点 2.1 知识和价值观 2.2 算法的研究方向 OpenAI近期公开了GPT-4&#xff0c;除了各方面性能的大幅度提升&#xff0c;最大的惊喜应该来自于插件模式的引入&#xff0c;GPT-4可以…

Ursina随笔(一)—— Chatgpt帮忙解决Ursina中文显示为方块的问题

去年使用Ursina来替代Unity 3D做了一个项目&#xff0c;用Python比c#爽&#xff0c;但程序的中文的显示问题一直没解决&#xff0c;临时的解决方法是翻译成英文或者用图片。Ursina的国内用户很少&#xff0c;网上也没搜索到解决方案&#xff0c;对这个问题一直念念不忘。 # -*…

一招,提高 Github 成员微信群运营效率

[外链图片转存失败&#xff0c;源站可能有防盗链机制&#xff0c;建议将图片保存下来上传(img-tvqbdR3w-1663327883339)(https://img-blog.csdnimg.cn/img_convert/b90a5642bc5aa322d23157e5fb5762ad.png)] 01 #学习是未来人工智能的基础石 外媒TechUp 3月1日&#xff0c;几…

微信中如何接入机器人才比较安全(不会收到警告或者f号)之第三步正式接入

大家好,我是雄雄,欢迎关注微信公众号:雄雄的小课堂。 前言 前面两篇文章分别介绍了下chatgpt接入方式: 微信中如何接入chatgpt机器人才比较安全(不会收到警告或者f号)之第一步登录微信 微信中如何接入chatgpt机器人才比较安全(不会收到警告或者f号)之第二步注入dll文件…

解决微信后台禁用url问题

解决微信后台禁用url问题 由于目前用的平台&#xff0c;域名都没有在微信授权&#xff0c;所以被微信给禁用了&#xff0c;我们现在用一个接口可以绑定域名的平台转发一下&#xff0c;演示选择使用vscode工具&#xff0c;其它有终端的工具亦可。 1. 安装vercel 全局安装verce…

智能面板小程序如何实现跨端开发,并无缝引入ChatGPT?

如何让开发者更便捷高效地开发面板小程序&#xff1f; 全球化 IoT 开发平台服务商涂鸦智能&#xff08;NYSE&#xff1a;TUYA&#xff0c;HKEX&#xff1a;2391&#xff09;原先提供的是一套基于 React Native (简称 RN) 的面板 SDK&#xff0c;但是随着面板规模的不断增长&am…

Onekey Card实测:绑定微信日常使用,可帮助开通 ChatGPT Plus

著名硬件钱包 OneKey 推出的 OneKey Card 是一个虚拟 Visa 卡&#xff0c;支持微信、支付宝等支付渠道。注册过程非常丝滑&#xff0c;而且可帮助开通 ChatGPT Plus。属实是Crypto Holder们的福音。我们在这里介绍如何注册使用OneKey Card。 01. OneKey Card是什么 OneKey Car…