开源数据结构和算法实践(开源项目:AlgorithmPractice)

算法和数据结构的Java/Go实践

�项目介绍

  • 本项目通过收集、分解各大厂的常见笔面试题,追本溯源至数据结构和算法的底层实现原理,采用Java和Go语言实现,配套测试数据和案例让代码更加准确。
  • 算法项目开源地址:AlgorithmPractice(欢迎练手的同学提 issue 和 PR 以及 Star)。
  • 本项目主要包括四个部分,分别是:算法、数据结构、设计模式、以及上述三个部分的单元测试,项目简图如图1-1所示:
    AlgorithmPractice项目结构简图

图 1-1 AlgorithmPractice项目结构简图

�️阅读建议

  • 本项目所有的测试案例已经迁移至腾讯云,需要从额外的conf配置文件中获取连接信息,否则无法全量测试,可以私聊获取PR的方式获取conf文件
  • 阅读顺序
    • 首先,你可以通过我的 思维导图,对项目整体架构有个了解,
    • 然后,可以跳转到我的 博客 查看设计思路和实现细节,
    • 最后,通过跳转至我的 gitee 查看具体的实现代码.

代码统计

26% 56% 7% 1% 9% 0% 各语言代码数量统计 Algorithm_Java_Version DataStructure_Java_Version DesignPattern_Java_Version Algorithm_Go_Version DataStructure_Go_Version DesignPattern_Go_Version

Java语言入口

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-l1SAnoOV-1658686815583)(https://img.shields.io/badge/Java_Code_Num-571-brightgreen.svg)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-MoD1Gv4U-1658686815584)(https://img.shields.io/badge/Java_Code_Line-34798-blue.svg)]

JavaVersionTotalAlgorithmDataStructureDesignPattern
Code/UT328/ 24395/ 71197/ 16236/ 10
CodeNum/TestNum20499/ 142995858/ 412513677/ 9821964/ 353

go语言入口

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-LDfREQ4A-1658686815585)(https://img.shields.io/badge/GO_Code_Num-66-brightgreen.svg)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-DIAEMc7i-1658686815586)(https://img.shields.io/badge/GO_Code_Line-2096-blue.svg)]

GoVersionTotalAlgorithmDataStructureDesignPattern
Code/UT34/ 322/ 331/ 281/ 1
CodeNum/TestNum1439/ 65764/ 571374/ 5991/ 1

�特色合集

�具体的项目目录结构

A l g o r i t h m / 算法专题 \color{7f1A8A}Algorithm/算法专题 Algorithm/算法专题


D a t a S t r u c t u r e / 数据结构专题 \color{7f1A8A}DataStructure /数据结构专题 DataStructure/数据结构专题


D e s i g n P a t t e r n / 设计模式专题 \color{7f1A8A}Design Pattern /设计模式专题 DesignPattern/设计模式专题


Tips

  • 全文搜一下关键词可能会有助于更好的使用

    • tips:解决题目问题需要思考到的点
    • attention:做题目时经常会忽略的一些细节【注意事项/边界条件】
    • grammar:表示Java语法的一些用法,方便快捷的找出最佳用法
  • 如何便捷地进行测试

    • 每个类都加上了UTFactory的测试用法
    • test()方法:调用了UTFactory的FullTest,表示验证功能,用于全量测试,调试时会连接一台有测试案例的数据库,并对所有测试案例进行测试,可能会出现下列情况:
      • 缺少测试案例
        • 解决方法:调用insert方法进行数据补充
      • 方法没有执行
        • 解决方法:定位没有执行的原因
      • 输入输出的数据格式获取/转换错误
        • 解决方法:定位数据格式获取/转换错误的原因
  • double_track()方法:调用了UTFactory的DoubleTrackTest,表示调试功能,用于复现错误测试案例,使用时需要手动粘贴FullTest运行时的的报错的input和output即可,方便进行断点调试

⚓️直接联系我

至简尚善,有知仍无畏 \color{ff1f1f}至简尚善,有知仍无畏 至简尚善,有知仍无畏

  • 65
    点赞
  • 38
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值