GitHub近10万星:印度小哥用Python和Java实现所有AI算法

简介: 今天两个算法实现的项目又登上了GitHub热榜,每逢招聘季必上榜?此前,这两个项目曾多次登顶,分别用Python和Java实现了面试中常考的算法,AI行业就业形势日趋严峻,而算法岗更是竞争激烈,是时候复习一下基本功了!

微信图片_20220108232520.jpg


又到了招聘季。疫情将我们圈在家里这么长时间,以至于都宅废了!

 

AI的算法你还记得多少?他们都是如何用Python和Java实现的?恐怕很多人一下子就慌了。

 

算法和数据结构是每个算法工程师必备的基础技能,也是面试必考的内容。


最近新智元也分析了AI行业算法工程师的就业情况,只能说形势很严峻!懂算法、会算法,将成为你求职路上的一个巨大优势。

 

今天为大家推荐的这两个项目,分别用Python和Java来实现了常用的所有算法,总星数加起来快10万了!搞定它们,算法面试环节一定能够为你加分。

      微信图片_20220108232523.png  


GitHub超10万星:AI算法的Python和Java实现

 

这个项目主要包括两部分内容。


      微信图片_20220108232525.png 


首先是有关算法的基本原理讲解。

 

这部分包括了常见的所有算法,如排序算法、搜索算法、插值算法、跳跃搜索算法、快速选择算法、禁忌搜索算法、加密算法等

 

每个算法都给出了详细的注释和使用示例。比如下图Python算法实现的项目中,我们以快排为例看一下,有点Python基础照着敲一遍就能快速理解。


      微信图片_20220108232527.png    


难能可贵的是,其中不少算法还在原理讲解部分加入了相关资源链接,包括维基百科、甚至动画交互网站链接,让原本抽象的算法变得更加直观。

 

比如下面这个鸡尾酒排序算法:


微信图片_20220108232529.gif


选择排序算法:


微信图片_20220108232531.gif

二分查找:


      微信图片_20220108232533.png

 

其次,也是本项目的重点:各种算法的代码实现。

 

你想了解主流的排序算法?点开这个sorts分类,各种排序算法应收尽收。


      微信图片_20220108232535.png


反向传播

      微信图片_20220108232537.png


图算法:

    微信图片_20220108232539.png


项目覆盖范围很广,起初只一系列经典算法,现在加入了更多的内容,比如数据抓取、区块链、数据压缩算法,还新增了量子计算等前沿领域的分类。

 

以作者的更新频率和贡献者的增长速度来看,这个项目将成长为Algorithm类目的巨无霸。

 

如果你觉得撸码太枯燥乏味,又没找到可视化的链接,那么下面这个算法可视化项目真的可以解救你。

 

https://github.com/algorithm-visualizer/algorithm-visualizer

 

这个项目目前支持所有算法JavaScript、C++、Java三种语言的实现,你可以在左边搜索你想学习的算法,在右侧控制播放速度,还能实时观察代码运行到了哪一行,当然你只想了解算法原理的话看中间的可视化部分就够了。


     微信图片_20220108232541.png  

 比如排序算法中的快排和最短路径搜索算法Dijkstra


微信图片_20220108232543.gif


quicksort


微信图片_20220108232545.gif


Dijkstra

 

10万星背后,是一位想当亿万富翁的印度开发小哥

 

其实去年这个时候,这俩项目加起来也没超过3万星,今年突然就快10万了!

 

我们很好奇,一年涨星5万+的项目,是谁创立的?于是我们就扒了扒The Algorithms 这个项目的创始人:Anup Kumar Panwar。


微信图片_20220108232547.png

Anup是一个痴迷于计算机的印度tech boy,毕业于印度一所拥有140年历史的大学:Panjab(旁遮普)大学。这是一所比北大还要年纪大的学校。

 

自称是技术、创业和编程爱好者。还对网络开发、混合型app开发和创新感兴趣,曾开发过一款叫做「Coupon, vouchers and promo codes」的优惠券app。

 

高中时期就刻意的培养自己的口才,当过head boy(经常需要做演讲的那种)、布过科学展、参加过辩论队。

 

上了大学后又开始热衷于研究商业,坦言自己的梦想是成为一名优秀的程序员和亿万富翁。


微信图片_20220108232549.png


目前在Gojek公司担任产品工程师。Gojek是东南亚按需多服务平台和数字支付技术集团。最初于2009年在印度尼西亚成立,是一个呼叫中心,用以将消费者与快递和两轮叫车服务联系起来,名字源于印尼各地常见的「Ojek」或摩托车出租车。

 

由此可见,梦想还是要有的。预祝各位正在求职的读者,看完这些算法后能够顺利通过面试,获得自己想要的职位。

相关文章
|
28天前
|
存储 人工智能 算法
数据结构与算法细节篇之最短路径问题:Dijkstra和Floyd算法详细描述,java语言实现。
这篇文章详细介绍了Dijkstra和Floyd算法,这两种算法分别用于解决单源和多源最短路径问题,并且提供了Java语言的实现代码。
63 3
数据结构与算法细节篇之最短路径问题:Dijkstra和Floyd算法详细描述,java语言实现。
|
1月前
|
存储 人工智能 开发工具
AI助理化繁为简,速取代码参数——使用python SDK 处理OSS存储的图片
只需要通过向AI助理提问的方式输入您的需求,即可瞬间获得核心流程代码及参数,缩短学习路径、提升开发效率。
1426 4
AI助理化繁为简,速取代码参数——使用python SDK 处理OSS存储的图片
|
1月前
|
数据采集 缓存 Java
Python vs Java:爬虫任务中的效率比较
Python vs Java:爬虫任务中的效率比较
|
1天前
|
人工智能 IDE 开发工具
Python AI 编程助手
Python AI 编程助手。
14 5
|
10天前
|
人工智能 C语言 Python
AI师傅+通义灵码=零基础小白上手python真·不是梦
作为一名不懂编程的设计师,我一直渴望掌握AI辅助设计。在快刀青衣的推荐下,我尝试了AI师傅和通义灵码,成功写出了第一个Python程序,并理解了编程的基本概念。通过AI师傅的引导和通义灵码的帮助,我顺利完成了Coursera上的Python课程,获得了两张证书。这种学习方式让编程变得不再遥不可及,为我的未来学习打开了新大门。
|
13天前
|
人工智能 JavaScript 前端开发
利用 AI 进行代码生成:GitHub Copilot 的实践与反思
【10月更文挑战第23天】本文探讨了GitHub Copilot,一个由微软和OpenAI合作推出的AI代码生成工具,其核心功能包括智能代码补全、多语言支持、上下文感知和持续学习。文章介绍了Copilot在加速开发流程、学习新语言、提高代码质量和减少重复工作等方面的应用,并反思了AI在代码生成中的代码所有权、安全性和技能发展等问题。最后,文章提供了实施Copilot的最佳实践,强调了在使用AI工具时保持对代码的控制和理解的重要性。
|
25天前
|
人工智能 文字识别 Java
SpringCloud+Python 混合微服务,如何打造AI分布式业务应用的技术底层?
尼恩,一位拥有20年架构经验的老架构师,通过其深厚的架构功力,成功指导了一位9年经验的网易工程师转型为大模型架构师,薪资逆涨50%,年薪近80W。尼恩的指导不仅帮助这位工程师在一年内成为大模型架构师,还让他管理起了10人团队,产品成功应用于多家大中型企业。尼恩因此决定编写《LLM大模型学习圣经》系列,帮助更多人掌握大模型架构,实现职业跃迁。该系列包括《从0到1吃透Transformer技术底座》、《从0到1精通RAG架构》等,旨在系统化、体系化地讲解大模型技术,助力读者实现“offer直提”。此外,尼恩还分享了多个技术圣经,如《NIO圣经》、《Docker圣经》等,帮助读者深入理解核心技术。
SpringCloud+Python 混合微服务,如何打造AI分布式业务应用的技术底层?
|
1月前
|
数据采集 人工智能 自然语言处理
Python实时查询股票API的FinanceAgent框架构建股票(美股/A股/港股)AI Agent
金融领域Finance AI Agents方面的工作,发现很多行业需求和用户输入的 query都是和查询股价/行情/指数/财报汇总/金融理财建议相关。如果需要准确的 金融实时数据就不能只依赖LLM 来生成了。常规的方案包括 RAG (包括调用API )再把对应数据和prompt 一起拼接送给大模型来做文本生成。稳定的一些商业机构的金融数据API基本都是收费的,如果是以科研和demo性质有一些开放爬虫API可以使用。这里主要介绍一下 FinanceAgent,github地址 https://github.com/AI-Hub-Admin/FinanceAgent
|
30天前
|
算法 搜索推荐 Java
java 后端 使用 Graphics2D 制作海报,画echarts图,带工具类,各种细节:如头像切割成圆形,文字换行算法(完美实验success),解决画上文字、图片后不清晰问题
这篇文章介绍了如何使用Java后端技术,结合Graphics2D和Echarts等工具,生成包含个性化信息和图表的海报,并提供了详细的代码实现和GitHub项目链接。
96 0
java 后端 使用 Graphics2D 制作海报,画echarts图,带工具类,各种细节:如头像切割成圆形,文字换行算法(完美实验success),解决画上文字、图片后不清晰问题
|
1月前
|
人工智能 开发者 Python
python读取word文档 | AI应用开发
在RAG系统中,构建知识库时需读取多种外部文档,其中Word文档较为常见。本文介绍如何使用`python-docx`库读取Word文档(.docx格式)中的标题、段落、表格和图片等内容。首先通过`pip install python-docx`安装库,然后利用提供的接口提取所需信息。尽管该库功能强大,但在识别标题样式时需自定义逻辑,并且仅提供图片的URI而非直接加载。示例代码展示了读取文本、识别标题、读取表格及获取图片URI的方法。【10月更文挑战第2天】
71 2