Git Product home page Git Product logo

other-java-note's Introduction

写在前面

  • 说明一下

最近入职新公司,要学习的东西很多,比较忙,所以暂时中断了更新,挺过了这段时间后面会慢慢补上,这仓库没有废弃~

码字不易,如果觉得有帮助,请点个 star 哈~

这个项目主要是 Java 学习笔记,内容包括 JVM、框架、趣谈 Java 系列、剑指offer题解、leetcode 题解、设计模式等。

目前只更新了部分内容 ,我会一到两天更新一次,目前在更新。现阶段主要将精力放在数据结构与算法上面,所以目前主要在更 leetcode题解剑指offer题解部分。

如果觉得可以,请点个 star 关注哦,谢谢各位小哥哥、小姐姐~

📝 📓 🍎 🚏 📚 🔧 🔍
ARTS 趣谈Java JVM 数据结构与算法 框架 书籍 工具 Lambda

ARTS

Algorithm:每周至少做一个leetcode的算法题;
Review:阅读并点评至少一篇英文技术文章;
Tip/Techni:学习至少一个技术技巧;
Share:分享一篇有观点和思考的技术文章。

趣谈Java系列

JVM

数据结构与算法

关于数据结构和算法,肯定有不少人会觉得反正工作中用不到,没必要花费那么大精力来学习。可真是如此吗?难道你真的愿意做一辈子的 CRUD BOY 吗?

那为什么要学习数据结构和算法呢?主要有以下几点:

  • 直接好处是学好数据结构和算法,我们能够写出性能更优的代码;
  • 算法是一种解决问题的思路,它与我们的生活和事业息息相关;
  • 长期来看,大脑思考能力是个人最重要的核心竞争力,而算法是为数不多的能够锻炼大脑思考能力的方式之一;
  • 基础知识就像一幢大楼的根基,它决定了我们的技术高度,而算法正是我们攀爬技术高峰不可或缺的基础之一。

说了这么多,还有各种理由抬杠,不愿意花费精力学习数据和算法的人,那也没办法,没啥好说的,懂的自然懂。

在这里我会将学习的每个数据结构和算法的理论基础的总结以及代码放在理论基础目录下面,而刷的 leetcode 的题目我也会将详细的解题思路和时间复杂度、空间复杂度写出来,具体可以点开每道题对应的答案链接查看。

理论基础

复杂度分析 数组 链表 队列 跳表 散列表 二叉树
⭐⭐⭐ ️⭐⭐⭐ ⭐⭐⭐ ️⭐ ️⭐⭐ ️⭐⭐⭐
贪心 分治 回溯 动态规划 递归 二分查找 排序
️⭐⭐⭐ ⭐⭐⭐ ⭐⭐⭐ ️⭐⭐⭐ ️⭐⭐⭐ ⭐⭐ ⭐⭐ ⭐⭐⭐

LeetCode题解

面试精选算法题

以下我会分门别类地整理一些面试中高频出现的算法题,并逐步去实现,实现后的答案链接会放在表格中,其中❎表示尚未完成,✅表示已经完成。

特别感谢:初始表格题目参考来源 https://github.com/gaoshengnan/LeetCode ,感谢 Github 用户 gaoshengnan 所整理的初始版本的 100 道题,题库会在此基础上慢慢扩展。

数组-Array
题号 难度 题目链接 答案链接 是否完成
11 中等 盛最多水的容器 ContainerWithMostWater
26 简单 删除排序数组中重复项 RemoveDuplicatesfromSortedArray
66 简单 加一 PlusOne
70 简单 爬楼梯 ClimbingStairs
88 简单 合并两个有序数组 MergeSortedArray
189 简单 旋转数组 RotateArray
283 简单 移动零 MoveZeroes
链表-LinkedList
题号 难度 题目链接 答案链接 是否完成
21 简单 合并两个有序链表 MergeTwoSortedLists
24 中等 两两交换链表中的节点
25 困难 K 个一组翻转链表
141 简单 环形链表 LinkedListCycle
142 中等 环形链表II Linked List Cycle II
206 简单 反转链表 ReverseLinkedList
其他实战题目
题号 难度 题目链接 答案链接 是否完成
1 简单 两数之和 TwoSum
167 简单 两数之和 II - 输入有序数组 TwoSumII
15 中等 三数之和 ThreeSum
20 简单 有效的括号
42 困难 接雨水
49 中等 字母异位词分组
84 困难 柱状图中最大的矩形
155 简单 最小栈
239 困难 滑动窗口最大值
242 简单 有效的字母异位词
641 中等 设计循环双端队列
二叉树-Binary Tree
题号 难度 题目链接 答案链接 是否完成
22 中等 括号生成
94 中等 二叉树的中序遍历
98 中等 验证二叉搜索树
104 简单 二叉树的最大深度
105 中等 从前序与中序遍历序列构造二叉树
111 简单 二叉树的最小深度
144 中等 二叉树的前序遍历
226 简单 翻转二叉树
230 中等 二叉搜索树中第K小的元素
236 中等 二叉树的最近公共祖先
297 困难 二叉树的序列化与反序列化
429 简单 N叉树的层序遍历
589 简单 N叉树的前序遍历
590 简单 N叉树的后序遍历
分治
题号 难度 题目链接 答案链接 是否完成
17 中等 电话号码的字母组合
50 中等 Pow(x, n)
78 中等 子集
169 简单 求众数
二分查找
题号 难度 题目链接 答案链接 是否完成
33 中等 搜索旋转排序数组 Search in Rotated Sorted Array
69 简单 x 的平方根
367 简单 有效的完全平方数
并查集
题号 难度 题目链接 答案链接 是否完成
130 中等 被围绕的区域
200 中等 岛屿数量
547 中等 朋友圈
遍历和搜索
题号 难度 题目链接 答案链接 是否完成
102 中等 二叉树的层次遍历
126 困难 单词接龙 II
127 中等 单词接龙
433 中等 最小基因变化
515 中等 在每个树行中找最大值
529 中等 扫雷游戏
动态规划
题号 难度 题目链接 答案链接 是否完成
32 中等 最长有效括号
45 困难 跳跃游戏 II
55 困难 跳跃游戏
62 中等 不同路径
63 中等 不同路径 II
64 中等 最小路径和
72 困难 编辑距离
76 困难 最小覆盖子串
91 中等 解码方法
120 中等 三角形最小路径和
121 简单 买卖股票的最佳时机
122 简单 买卖股票的最佳时机 II
123 困难 买卖股票的最佳时机 III
152 中等 乘积最大子序列
188 困难 买卖股票的最佳时机 IV
198 简单 打家劫舍
213 中等 打家劫舍 II
221 中等 最大正方形
279 中等 完全平方数
322 中等 零钱兑换
518 中等 零钱兑换 II
309 中等 最佳买卖股票时机含冷冻期
312 困难 戳气球
363 困难 矩形区域不超过 K 的最大数值和
403 困难 青蛙过河
410 困难 分割数组的最大值
552 困难 学生出勤记录 II
621 中等 任务调度器
647 中等 回文子串
714 中等 买卖股票的最佳时机含手续费
980 困难 不同路径 III
剪枝
题号 难度 题目链接 答案链接 是否完成
36 中等 有效的数独
37 困难 解数独
51 困难 N皇后
贪心算法
题号 难度 题目链接 答案链接 是否完成
455 简单 分发饼干
860 简单 柠檬水找零
874 简单 模拟行走机器人
trie树
题号 难度 题目链接 答案链接 是否完成
208 中等 实现 Trie (前缀树)
212 困难 单词搜索 II
位运算
题号 难度 题目链接 答案链接 是否完成
52 困难 N皇后 II
190 简单 颠倒二进制位
191 简单 位1的个数
231 简单 2的幂
338 中等 比特位计数
LRU Catch
题号 难度 题目链接 答案链接 是否完成
146 困难 LRU缓存机制

剑指Offer题解(Java版)

框架

Spring

经典书籍

工具

Lambda

other-java-note's People

Contributors

bigrotor187 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.