news 2026/4/23 12:29:18

学算法不再卡壳!Hello-Algo 让抽象概念秒懂,搭配cpolar远程访问更灵活

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
学算法不再卡壳!Hello-Algo 让抽象概念秒懂,搭配cpolar远程访问更灵活

文章目录

    • **前言**
    • 1.关于hello-algo
    • 2.安装Docker和Docker compose
    • 3.本地部署hello-algo
    • 4. hello-algo本地访问
    • 5.cpolar内网穿透工具安装
    • 6.创建远程连接公网地址
    • 7.固定Uptime Kuma公网地址
        • 有了这样的组合,学习算法不再受限于固定场所,随时随地都能沉浸在直观的学习环境中,让算法学习更高效、更自由。

前言

Hello-Algo 是一款专注于数据结构与算法学习的开源工具,涵盖从基础结构到复杂算法的各类内容,通过动画图解展示数据结构变化和算法执行步骤,支持 12 种编程语言实现。它适合编程初学者打基础,也能帮有经验的开发者梳理知识体系,优点在于将抽象概念直观化,还有可交互调试沙盒辅助实践。

使用时能发现,它的思维导图能快速理清概念脉络,比如红黑树通过分步动画变得易懂,不过本地部署后需要一定的网络环境支持,初次设置端口映射可能需要多试几次。

但它默认只能在局域网内访问,这意味着换个网络环境就没法继续学习,比如出门在外想复习某个算法,或者团队成员不在同一局域网就很难共享学习内容。

而当 Hello-Algo 与 cpolar 结合后,这个问题迎刃而解。通过内网穿透,能生成公网地址,让你在地铁、咖啡馆等任何地方用手机或电脑访问,团队协作时也能轻松共享可视化界面讲解思路,大大拓展了学习的灵活性。

1.关于hello-algo

Hello-Algo是一个旨在帮助编程爱好者系统地学习数据结构和算法的开源项目。它通过多种创新的方式,为学习者提供了一个直观、互动的学习平台。从基本的数据结构到复杂的算法,涵盖各种经典算法问题,每种都有详细的原理和应用场景介绍。而且还有动画展示数据结构的变化过程和算法执行的步骤,能帮助初学者更好的理解抽象概念。

Github地址:https://github.com/krahets/hello-algo?spm=a2c6h.12873639.article-detail.7.67bd542bZUgP9b

它不仅提供了丰富的动画图解,让抽象的概念变得生动易懂,还涵盖了12种编程语言的代码实现,包括 Python、C++、Java、C#、Go、Swift、JavaScript、TypeScript、Dart、Rust、C 和 Zig,满足了不同学习者的需求。

以其动画图解的直观性、多语言代码示例的丰富性、社区互动的互助性以及本地一键部署的便捷性为特点,提供了一个全面、互动且易于访问的算法和数据结构学习平台。这些特点不仅使得复杂算法概念的理解和记忆变得更加容易,也极大地促进了学习者之间的交流和知识共享,同时允许用户在自己的环境中实践和探索算法,从而深化学习体验。

2.安装Docker和Docker compose

本教程操作环境为Linux Ubuntu系统,在开始之前,我们需要先安装Docker。

在终端中执行下方命令安装docker:

curl-fsSL https://get.docker.com -o get-docker.sh

然后再启动docker

sudoshget-docker.sh

最后我们在docker容器中运行下hello world看一下是否安装成功。

sudodocker container run hello-world

可以看到出现了hello world,说明我们已经安装docker成功,就可以进行下一步了

此时Docker已经安装完了,我们进行下一步。

3.本地部署hello-algo

本项目提供了一键安装脚本,前提是需要安装git可以使用以下命令一键安装。

gitclone https://github.com/krahets/hello-algo.git

现在就已经安装成功了,输入下方命令进入到hello-algo里面

cdhello-algo

现在输入下方命令来启动hello-algo

sudodocker compose up -d

启动完成后我们可以输入下方命令查看一下端口号

sudodockerps

现在就已经全部都安装成功了,可以通过打开web浏览器输入localhost:8000来浏览Hello-algo了。

4. hello-algo本地访问

进入到hell-algo了,能看到页面非常的清晰,想学习哪个章节可以随意点击,并且可以调换白天or黑夜模式,语言也是可以选择的。

小结

上面在本地Linux中使用Docker成功部署了hello-algo,并局域网访问成功。整体来说hello-algo是一款非常不错的免费算法学习工具,它提供了完备的功能,并且具有非常好的实用性和易用性,并且也非常容易安装部署。

如果想不在同一个局域网时远程访问本地部署的hello-algo学习算法,可以创建一个公网地址,这里我使用的是cpolar内网穿透,通过cpolar转发本地端口映射的http公网地址,我们可以很容易实现远程访问,无需自己注册域名购买云服务器,可节省大量费用。

5.cpolar内网穿透工具安装

下面是安装cpolar步骤:

Cpolar官网地址: https://www.cpolar.com

使用一键脚本安装命令

sudocurlhttps://get.cpolar.sh|sh

安装完成后,执行下方命令查看cpolar服务状态:(如图所示即为正常启动)

sudosystemctl status cpolar

Cpolar安装和成功启动服务后,在浏览器上输入ubuntu主机IP加9200端口即:【http://localhost:9200】访问Cpolar管理界面,使用Cpolar官网注册的账号登录,登录后即可看到cpolar web 配置界面,接下来在web 界面配置即可:

6.创建远程连接公网地址

登录cpolar web UI管理界面后,点击左侧仪表盘的隧道管理——创建隧道:

  • 隧道名称:可自定义,本例使用了:helloalgo注意不要与已有的隧道名称重复
  • 协议:http
  • 本地地址:https://localhost:8000
  • 域名类型:随机域名
  • 地区:选择China Top

创建成功后,打开左侧在线隧道列表,可以看到刚刚通过创建隧道生成了两个公网地址,接下来就可以在其他电脑(异地)上,使用任意一个地址在浏览器中访问即可。

如下图所示,成功实现使用公网地址异地远程访问本地部署的hello-algo

使用上面的cpolar https公网地址,在任意设备的浏览器进行访问,即可成功看到我们hello-algo管理界面,这样一个利用公网地址可以进行远程访问的隧道就创建好了,无需自己购买云服务器,使用cpolar创建隧道即可发布到公网进行远程访问,新域名登录,可能需要重新登陆!

7.固定Uptime Kuma公网地址

由于以上使用cpolar所创建的隧道使用的是随机公网地址,24小时内会随机变化,不利于长期远程访问。因此我们可以为其配置二级子域名,该地址为固定地址,不会随机变化。

注意需要将cpolar套餐升级至基础套餐或以上,且每个套餐对应的带宽不一样。【cpolar.cn已备案】

登录cpolar官网:https://www.cpolar.com

点击左侧的预留,选择保留二级子域名,地区选择china top,然后设置一个二级子域名名称,填写备注信息,点击保留。

保留成功后复制保留的二级子域名地址:

登录cpolar web UI管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到所要配置的隧道,点击右侧的编辑

修改隧道信息,将保留成功的二级子域名配置到隧道中

  • 域名类型:选择二级子域名
  • Sub Domain:填写保留成功的二级子域名
  • 地区: China Top

点击更新

更新完成后,打开在线隧道列表,此时可以看到随机的公网地址已经发生变化,地址名称也变成了保留和固定的二级子域名名称。

最后,我们使用固定的公网地址访问hello-algo管理界面可以看到访问成功,一个永久不会变化的远程访问方式即设置好了。

接下来就可以随时随地进行公网访问管理hello-algo了,还把公网地址分享给身边的人。自己用的话,无需云服务器,还可以实现异地远程访问!以上就是如何在Linux Ubuntu系统Docker本地安装hello-algo的全部过程。

有了这样的组合,学习算法不再受限于固定场所,随时随地都能沉浸在直观的学习环境中,让算法学习更高效、更自由。

cpolar官网-安全的内网穿透工具 | 无需公网ip | 远程访问 | 搭建网站

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/18 2:44:29

Kotaemon Azure Machine Learning 服务对接

Kotaemon 与 Azure Machine Learning 的深度集成实践 在企业智能化转型加速的今天,越来越多组织开始构建基于大语言模型的智能客服、知识助手和自动化代理。然而,从原型验证到生产落地的过程中,团队常常面临环境不一致、部署复杂、运维困难等…

作者头像 李华
网站建设 2026/4/16 16:13:48

文件是否存在

目录 window系统判断: 需要加双引号: python 判断: window系统判断: 需要加双引号: dir "D:\Program Files\Epic Games\Launcher\Engine\Binaries\Win64\EpicGamesLauncher.exe" /a-d if exist "…

作者头像 李华
网站建设 2026/4/18 7:53:25

chumpy 安装笔记

chumpy 安装# 确保安装了编译工具和依赖 pip install wheel setuptools numpy<1.24 -i https://pypi.tuna.tsinghua.edu.cn/simple # 下载 chumpy 源码包 pip download chumpy --no-deps -d ./ # 解压并进入目录 tar -xzf chumpy-*.tar.gz cd chumpy-*/ # 尝试直接使用 setu…

作者头像 李华
网站建设 2026/4/18 1:07:09

视频推流平台EasyDSS无人机推流直播在应急抢险可视化指挥中的实践

在各类自然灾害和突发公共事件面前&#xff0c;应急抢险工作的效率和质量直接关系到人民群众的生命财产安全。传统应急指挥模式常受限于地形阻隔、视野狭窄、信息滞后等痛点&#xff0c;导致救援决策延迟、资源调度失衡。其中&#xff0c;视频推流平台EasyDSS与无人机推流直播技…

作者头像 李华
网站建设 2026/4/15 13:37:22

从0到1搭应用,这些低代码平台很省心

最近很多人在做业务系统、内部工具或数据管理时&#xff0c;都会开始关注低代码平台。相比传统开发&#xff0c;低代码更轻量、上手更快&#xff0c;也更适合非技术背景的团队。下面按顺序分享5款口碑不错、各有优势的免费低代码平台&#xff0c;适合不同阶段和不同需求的用户参…

作者头像 李华
网站建设 2026/4/16 22:07:14

我发现自监督学习修复基因影像缺损 罕见病早筛准确率翻倍

&#x1f4dd; 博客主页&#xff1a;Jax的CSDN主页 目录《当AI医生误诊了我的咖啡因依赖症》 一、深夜急诊室的AI危机 二、医疗AI的"双面人生" 1. 诊所里的AI助手 2. 医生办公室的"第二意见" 三、医疗AI的"成长烦恼" 1. 数据偏见的现实案例 2. …

作者头像 李华