algo-basic icon indicating copy to clipboard operation
algo-basic copied to clipboard

专注于分享算法,计算机基础(包括计算机网络,操作系统,MySQL等),无论是应付面试,还是提升自己地内功,这里都能帮到你

algo-basic

为了让大家更好着阅读算法,计算机基础(包括计算机网络,操作系统,MySQL等)等高质量技术文章,我把这些文章整理成了一本带有高清目录的 PDF,不过为了后续方便更正错误以及增加新内容,所以有了这个 Github。

所以呢,这个Github将会分享数据结构,算法,计算机基础,我的学习经验等文章,无论你是要应付面试,特别是校招,还是想提升自己的内功,我想,我的这些文章都会对你有所帮助,这些文章基本都是获得各大博客平台一直好评之后,我才更新到这里了。

另外,如果看了文章后有帮助,帅地想请你帮我个忙,送我一个 Star,满足下我地虚荣心,如果 Star 多的话,说不定我还有机会截图发个朋友圈,装装B,嘻嘻。

最后,如果你想看 PDF 或者 epub 版本的电子书,可以在我的微信公众号 帅地玩编程 回复 程序员内功修炼 ,即可获取所有文章整理而成,带有高清目录的 PDF/epub 版电子书哦,可以直接扫一扫关注哦。

我的公众号ID:di201805,微信搜索搜索这个ID即可找到

目录

  • 学算法
    • 学习算法经验分享
    • 学递归
    • 学动态规划
    • 学二分查找
    • 再现校招算法面试现场
    • 学字符串匹配算法
    • 必学算法思维与技巧
    • 必学排序算法
    • 搞定二叉树
    • 搞定链表
  • 学数据结构
  • 学计算机网络
  • 写给在校生的经验总结
  • 个人经历与感想
  • 学操作系统
  • MySQL
  • Java
  • Git
  • 看过的优质书籍推荐
  • 后续
  • 赞赏

学算法

学习算法经验分享

  • 程序员必须掌握的算法有哪些?
  • 作为一个小白,算法该如何学习?
  • leetcode刷500道题,笔试/面试稳过吗?

学递归

  • 为什么你学不会递归?告别递归,谈谈我的一些经验
  • 训练1:在两个长度相等的排序数组中找到上中位数
  • 训练2:求两个有序数组的第K小数
  • 训练3:求两个有序数组的中位数(论思维转换的重要性)

学动态规划

  • 动态规划很难?DP连刷40道题,我总结出了这些套路!
  • 动态规划的优化
  • 训练1:详解三道一维的动态规划算法题
  • 训练2:详解leetcode221题:最大正方形

学二分查找

  • 二分查找你确定真的会?生活中还能用来设计骗局?
  • 两道看似简单的算法题
  • 二分法题型小结

再现校招算法面试现场

  • 记一道字节跳动的算法面试题:变形的链表反转
  • 记一次手撕算法面试:字节跳动的面试官把我四连击了
  • 一道阿里笔试题:我是如何用一行代码解决约瑟夫环问题的
  • 记一次阿里面试:面试挂在了LRU缓存算法设计上
  • 前缀和的应用,从一道网易笔试题说起
  • 面试被虐:记一次shopee算法面试题:最小栈的最优解
  • 面试被虐:说说游戏中的敏感词过滤是如何实现的?
  • 只用2GB内存从20亿,40亿,80亿个整数中找到出现次数最多的数

学字符串匹配算法

  • 图解字符串匹配KMP算法
  • 字符串匹配Boyer-Moore算法:文本编辑器中的查找功能是如何实现的?

必学算法思维与技巧

  • 最求极致:我是如何把easy级别的算法题做成hard级别的
  • 分享一道解法巧妙的算法题
  • 阶乘很简单?说实话,这几道阶乘相关面试题你还真不一定懂!
  • 面试官,求求你不要问我这么简单但又刁难的算法题了
  • 牛逼!一行代码居然能解决这么多曾经困扰我半天的算法题
  • 帅地给你总结了这份高频地算法解题技巧,助你更快速着解题!
  • 算法数据结构中有哪些奇技淫巧?
  • 位运算装逼指南
  • 寻找缺失的整数

必学排序算法

  • 漫画:求求你不要再问我快速排序了
  • 漫画:为什么说O(n)复杂度的基数排序没有快速排序快?
  • 漫画:外部排序:如果用2GB内存给20亿个整数排序?(其实这也是一个常考面试题)
  • 别翻了,程序员必学十大经典排序算法,看这篇就够了

搞定二叉树

  • 二叉树的先序遍历(非递归版)
  • 二叉树的中序遍历(非递归版)
  • 二叉树的后序遍历(非递归版)
  • 从上往下打印二叉树
  • 二叉树的构建
  • 二叉树的镜像
  • 二叉树的子结构
  • 二叉搜索树的后序遍历序列
  • 重建二叉树

搞定链表

  • 链表训练1:删除单链表的第K个节点
  • 链表训练2:删除单链表的中间节点
  • 链表训练3:如何优雅着反转单链表
  • 链表训练4:环形单链表约瑟夫问题
  • 链表训练5:三种方法带你优雅判断回文链表
  • 链表训练6:将单向链表按某值划分成左边小,中间相等,右边大的形式
  • 链表训练7:复制含有随机指针节点的链表
  • 链表训练8:将单链表的每K个节点之间逆序
  • 链表训练9:将搜索二叉树转换成双向链表

学数据结构

  • 二叉堆是什么鬼?
  • 堆排序是什么鬼?
  • 漫画:什么是avl树?
  • 腾讯面试题:有了二叉查找树,平衡树为啥还需要红黑树?
  • 高频面试:什么是B树?为啥文件索引要用B树而不用二叉查找树?
  • 以后有面试官问你跳跃表,你就把这篇文章扔给他

学计算机网络

  • 一文读懂一台计算机是如何把数据发送给另一台计算机的
  • 漫话:什么是https?这应该是全网把https讲的最好的一篇文章了
  • 图解:两天完全陌生的主机是如何办到数据的正确交付的?
  • 数字签名是什么
  • 什么是拥塞控制?
  • 什么是TCP流量控制
  • 什么是广播路由算法?如何解决广播风暴?
  • 关于三次握手与四次挥手面试官想考我们什么?
  • 电脑的ip是怎么来的?我又没有配置过
  • 电路交换与分组交换的区别

写给在校生的经验总结

  • 学了四年编程,这些优质的学习工具,网站与资料,推荐给你们
  • 想了很久,这是一份适合普通大众的学习路线
  • 核心整理:那些让你起飞的计算机基础知识:学什么,怎么学?
  • 嗯,春招两次腾讯面试都挂二面,分享下我失败+傻傻的面试经历
  • 历经两个月的秋招,结束了,谈谈春秋招中一些重要的知识点吧
  • 有必要说一说即将到来的春招(经历+重要性+如何准备)
  • 讲一讲当时春秋招时做过的项目以及推荐几个项目+面试视频

个人经历与感想

  • 秋招结束了,普普通通,我的三年大学
  • 写公众号15个月以来,这一路上的学习与收获
  • 我的2019
  • 玩公众号写文章一年多以来,我经历了被喷被拉黑被赞美,我酸了
  • 2020第一篇原创:我是如何让自己变的更加优秀的
  • 说一说我最近的日常,学习与思考

学操作系统

这部分的文章有点少,后面逐渐补充,敬请期待

  • 记一次面试:进程之间究竟有哪些通信方式?如何通信?

MySQL

  • 腾讯面试:一条SQL语句执行得很慢的原因有哪些?
  • 面试小知识:MySQL索引相关
  • 我去,这两个小技巧,让我的SQL语句不仅躲了坑,还提升了1000倍

Java

  • 线程安全(上):彻底搞懂volatile关键字
  • 线程安全(下):彻底搞懂synchronized(从偏向锁到重量级锁)
  • 一句话撸完重量级锁、自旋锁、轻量级锁、偏向锁、悲观、乐观锁等各种锁
  • 并发的核心:CAS是什么?Java8是如何优化CAS的?
  • Java并发包中最重要的几个同步类,你敢不学?
  • 求求你规范下你的代码风格

Git

  • 最近从0学习Git,总结了这份Git命令宝典

看过的优质书籍推荐

  • 大学四年,看过的优质书籍推荐
  • 算法与计算机基础,有哪些值得阅读的书籍?

后续

希望这本电子书对你有所帮助,如果大家的反响不错,我后面会继续增加内容,目前这本算是初级版,可能也存在很多不足,例如错别字,某些知识点写错,如果大家遇到什么疑问,都可以通过我的公众号找到我,可以在我的公众号留言,或者直接加我的个人微信。

赞赏

电子书的整理也是挺不容易,如果你觉得有帮助,想要打赏作者,那么可以通过这个收款码打赏我,金额不重要,心意最重要,主要是我可以通过这个打赏情况来预计大家对这本电子书的评价,嘻嘻。

注:打款时可以备注下你的昵称哦,可以是 CSDN,可以是 微信,可以是 GitHub等

在这里插入图片描述