Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

3218870799/algorithmPractice

Folders and files

NameName
Last commit message
Last commit date

Latest commit

History

193 Commits

Repository files navigation

KnowledgePractice

📊 ⚔️ 🖥 🚏 🏖 🌁 📮 🔍 🚀 🌈 💡
Java源码解析 数据结构 经典算法 经典问题 功能函数 LeetCode题解 待更 待更 待更 待更 联系作者

一:Java深入理解与源码分析

为方便管理,此部分​​已迁移整理至Github项目-Note ——Java基础,欢迎浏览提出建议

👟建议下载使用Typora软件进行查看与编辑,效果更佳哦!

1:基本的程序设计结构 🚥

数据类型

为什么Java要把字符串设计成不可变的

基本数据类型与引用数据类型的传递方式

Java中的四种引用类型

关键字

彻底搞懂volatile关键字
synchronized关键字

2:对象与类

Java对象的创建过程:类的初始化与实例化

3:Java面向对象的特性

重写与重载





4:Java中常用的对象与方法

一次性搞清楚equals和hashCode

5:异常,日志,断言和调试

Java中try,catch,finally的细节分析

7:集合

ArrayList工作原理及实现
Java7/8 中的HashMap 和 ConcurrentHashMap

9:反射

反射机制

10:IO流

NIO浅析

二:数据结构

数组


链表



队列

矩阵相关 🚧

正反矩阵打印与之字打印

二叉树相关 🌊

二叉树认知

2-3树
BST树
AVL树
RBT红黑树
哈夫曼树

形象打印二叉树
判断是否是平衡二叉树

窗口相关 🎡





三:经典算法

https://www.cnblogs.com/nullering/p/9536339.html欢迎各位指导!

基础算法:four_leaf_clover:

枚举
递推
贪心
递归
分治
构造
模拟
排序
检索

排序 ❤️

比较排序

基础认知:Java集合
冒泡排序
选择排序
直接插入排序
快速排序
归并排序
堆排序

非比较排序

计数排序
基数排序
桶排序

典型基础 🚠

KMP算法
布隆过滤器
一致性哈希

图论相关算法

广度优先搜索BFS
Warshall算法
Floyed算法
Prim算法
Kruskal算法
Dijkstra算法
并查集

数论计算

求最大公约数与最小公倍数
组合
大数加法减法乘法
矩阵
线性筛

字符串

最长公共子序列 最长上升子序列

四:经典问题

旅行商问题
凸包问题
曼哈顿问题
n皇后问题

五:常用功能类与功能函数

微信支付工具类
字符排列数工具类
字符编码工具类
数据类型转换工具类

常见加密算法工具类

Base64加密Demo
MD5加密Demo

字符串处理工具类







六:LeetCode题解 🚡





>> 该部分答案多为本人刷题的题解,部分问题没有官方解答,所以贡献一份思路,并将最优解答Copy至此,便于向高手学习

题目描述请移步LeetCode

数组 链表 字符串 哈希表 队列
15:三数之和 19:删除链表的倒数的第N个节点 6:Z字形变换 待更 622:设计循环队列
16:最接近的三数之和 21:合并两个有序链表 12:整数转罗马数字 待更 待更
26: 删除排序数组中的重复项 24:两两交换链表中的节点 13:罗马转整数 待更 待更
27: 移除元素 141:判断链表是否有环 14:最长公共前缀 待更 待更
33: 在旋转排序数组中搜索 142:返回虚幻链表中的进环节点 17:电话号码的字母组合 待更 待更
105: 从前序与中序序列构件二叉树 206:反转链表 20:有效的括号 待更 待更
待更 待更 125:验证回文串 待更 待更
递归
225: 用队列实现栈结构 687:最长同值路径 待更 待更 待更
232: 用栈实现队列 待更 待更 待更 待更
排序 拓扑排序 深度优先搜索 二分查找 双指针 广度优先搜索
待更 待更 待更 待更 待更 待更
贪心算法 回溯算法 分治算法 动态规划
待更 待更 待更 待更

七:项目说明:hammer:

本项目一开始使用简单的java项目创建,后随着内容逐渐丰富,先变成Maven项目进行管理。

使用不同开发工具对本项目进行开发,方法不唯一,只是提供一个参考

1:使用Eclipse

1:使用Git克隆到本地

image-20201114164053895

2:工作区导入已存在的Maven项目

image-20201114164240301

3:选择克隆的项目即可

2:IDEA

1:使用Git克隆到本地

2:直接选择Open or import 导入IDEA

image-20201114164434509

3:解决单个类方法错误影响其他类的运行/错误: 找不到或无法加载主类

选择setting,将编译器改成Eclipse

找到Run ——Edit Configuration

将Build点减号删掉选择Build No erroe check

在这里插入图片描述

联系作者 🌺








待更 🍀

About

🍀 Java开发者的基础学习库,语言,数据结构,算法以及题解

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

Contributors

Languages

AltStyle によって変換されたページ (->オリジナル) /